当用户单击标签时,我需要从外部页面加载内容:
$('#anchortag').click(function() {
event.preventDefault();
$('#recepient').hide();
$('#recepient').load('otherpage.php', function(data) {
$.fancybox(data, {});
});
});
我使用的是jQuery load()
方法,但我想要的是打开包含外部内容的fancybox,而现在,内容显示在#recepient
和fancybox中。如果我尝试这样做:$.load
(没有指定目标),它会失败( fancybox没有出现,我猜函数不能工作)。
如何使用load或其他jquery函数在fancybox中只打开外部内容?
编辑:为什么这个脚本只能在Chrome下运行,而不能在FF或IE下运行?
发布于 2011-07-05 06:24:40
请改用$.get(..)
。load(..)
将内容作为目标对象的innerHTML,这是您不希望看到的。
发布于 2011-07-05 06:36:05
我假设fancybox有一个包含html的div,如果是这样的话,你可以这样做…
$('#anchortag').click(function() {
event.preventDefault();
$('#recepient').hide().empty();
$.ajax({
url:'path/to/html',
success:function(data){
$('#recepient').html(data);
/* fire fancy box here ...*/
},
error:function(){
alert('an error occurred')
}
});
});
<div id="recepient" style="display:none"></div>
Jquery未测试...我在原生对话框中也做过类似的事情。
https://stackoverflow.com/questions/6576511
复制相似问题