Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery FancyBox/Lightbox问题_Javascript_Jquery_Fancybox - Fatal编程技术网

Javascript jQuery FancyBox/Lightbox问题

Javascript jQuery FancyBox/Lightbox问题,javascript,jquery,fancybox,Javascript,Jquery,Fancybox,我用JS将一些html编写到一个div中 像这样 $("#picdiv").html("<a rel='lightbox' href='pic.jpg'><img src='htumb.jpg'></a>"); 但是如果我点击这个链接,就会看到一个有图片的页面。。。我知道问题一定是,我用js编写html,但我没有其他选择。那么我可以让fancybox工作吗?这是由于jQuery的工作方式。fancybox函数只适用于页面上的当前元素,而不适用于javascr

我用JS将一些html编写到一个div中

像这样

$("#picdiv").html("<a rel='lightbox' href='pic.jpg'><img src='htumb.jpg'></a>");

但是如果我点击这个链接,就会看到一个有图片的页面。。。我知道问题一定是,我用js编写html,但我没有其他选择。那么我可以让fancybox工作吗?

这是由于jQuery的工作方式。fancybox函数只适用于页面上的当前元素,而不适用于javascript动态添加的元素

快速修复方法可能是修改代码,如下所示:

$("#picdiv").append($("<a rel='lightbox' href='pic.jpg'><img src='htumb.jpg'></a>").fancybox());
$(“#picdiv”).append($(”“).fancybox());
不确定上述方法是否有效,但总体思路是确保创建的任何新元素都应用了插件。

解决方案

$('.picture_display').find('a[rel=lightbox]').fancybox(); 
$('.picture_display').find('a[rel=lightbox]').fancybox();