Fancybox - 是否可以使用javascript变量字符串作为HTML内容?

时间:2014-08-28 18:15:33

标签: javascript jquery fancybox

我知道Fancybox的说明声明内容可以通过四种方式传递;图像,内联,iFrame或Ajax。

但是我想知道我是否有一个字符串:

var html = "<p>Some html content</p>";

如果我可以使用此内容调用fancybox窗口?

编辑关于JFK的答案,根据情况提供内容的最佳方式是什么?例如,假设我有两个不同的fancybox链接:

<a href="#" class="fancybox class-one">Click me</a>
<a href="#" class="fancybox class-two">Click me</a>

因此,当点击任一链接时,我想根据第二个类名显示不同的内容?

1 个答案:

答案 0 :(得分:1)

是的,这是可能的。您也可以将html设置为type的{​​{1}},这样就可以了

content

注意,无论在主播的var html = "<p>Some html content</p>"; jQuery(document).ready(function ($) { $(".fancybox").fancybox({ type: "html", // not an image but html content: html // overrides fancybox content }); }); // ready 属性中设置什么,API选项content 都会覆盖 fancybox content绑定到fancybox所以这个

href

...仍然会在fancybox中显示javascript变量的值,而不是<a class="fancybox" href="images/01.jpg">Open Fancybox</a>

中的图片

参见 JSFIDDLE


编辑

根据选择器的提供内容,如

href

...我认为最好的办法是使用<a href="#" class="fancybox class-one">Click me</a> <a href="#" class="fancybox class-two">Click me</a> 语句(在switch方法内)动态设置.on()变量的值。然后以编程方式启动fancybox,如:

html

请参阅分叉 JSFIDDLE