DOM修改后应用事件

时间:2010-10-04 11:00:26

标签: jquery

这可能是一个非常常见的问题,但在这里。 我为一些小拇指照片创建了一个图像轮播。当我点击一个拇指时,它会稍微大一些,并添加id #click。如果再次单击它,我想添加fancybox查看器。很明显$('a#click')。click()不起作用,因为之后创建了元素,如何让脚本考虑到这些修改?我试过

 $('a#click').live('click', function() {
   $(this).fancybox();
 });

但那没用。

1 个答案:

答案 0 :(得分:1)

.fancybox() 附加 fancybox行为,但它实际上并没有打开它,它为下一个 click事件做好准备。 ..所以你需要触发它附加的处理程序。最佳方式是使用.triggerHandler()触发处理程序而不是冒泡,如下所示:

 $('a#click').live('click', function() {
   $(this).fancybox().triggerHandler('click');
 });