Jquery 1.11.1
FancyBox 2.1.5
正如所描述的标题,
$.fancybox( elem ) // works!
$( elem ).fancybox() // Returns `elem`, but doesn't instantiate the Popup
我会低头并选择第一个选项,因为它有效,但我不能以这种方式将选项传递给FancyBox。
有什么想法吗?谢谢!
答案 0 :(得分:1)
将此作为部分答案发布。使用工作的非官方语法,我可以写:
$.fancybox({ content: elem });
然后我可以传递选项以及elem
答案 1 :(得分:1)
案例1 :
$( elem ).fancybox({
// API options
});
...只是将fancybox绑定到elem
,但仍然需要click
事件(在elem
上)来触发fancybox。请参阅 JSFIDDLE
案例2 :
$.fancybox(elem,{
// API options
});
...使用elem
作为内容以编程方式触发fancybox。的 JSFIDDLE 强>
案例3 :
$.fancybox({
content: elem,
// other API options
});
...它与 case 2 类似,但使用的语法不同。它通常用于将任意HTML作为内容传递(它通常需要将type
设置为html
)。的 JSFIDDLE 强>
案例4 :
如果elem
是引用(例如inline
容器),那么您可以
$.fancybox({
href: elem,
// other API options
});
<强> JSFIDDLE 强>
案例5 :
$.fancybox([object],{
// API options
});
...您可以传递javascript 对象的集合,例如:
var elem = [{
href: "images/image01.jpg",
title: "title 01"
}, {
href: "images/image02.jpg",
title: "title 02"
}];
参见 JSFIDDLE
注意:以上所有方案均适用于fancybox v1.3.4或v2.x