我正在使用jQuery UI tabs()将ajax内容加载到页面中。
其中一些内容链接到应通过colorbox()
打开的模态窗口,但我无法正常启动它们。
有人可以给我一些指示吗? 我是否需要在通过ajax加载的内容中包含colorbox库?我认为它应该足够在父页面中,并且我只是在内容加载后再次调用colorbox,但我仍然让它工作。
这就是我所拥有的(什么都不做)......:
$( "#tabs" ).tabs().bind('tabsload',function(event, ui){
//alert('The tab is loaded. What now?');
$("#tabs .iframe").colorbox({iframe:true, width:"65%", height:"80%"});
});
答案 0 :(得分:1)
到目前为止,您的代码对我来说很好。我把一个简单的小提琴放在一起,演示了这个功能。我使用activate
事件代替load
,因为后者不起作用(尽管这可能是因为我没有通过AJAX加载我的标签)。无论哪种方式,activate
也适合您:
$("#tabs").tabs({
activate: function (event, ui) {
$("#tabs .colorbox").colorbox({iframe:true, width:"65%", height:"80%"});
}
});
小提琴:http://jsfiddle.net/g27szcop/1/
您不应该将颜色框库包含在AJAX内容中,除非您正在做一些奇怪的事情,例如在每个标签内创建iFrame,然后将内容加载到 。如果您能够发布更多代码,我可以通过其他建议更新我的小提琴。