jquery live & livequery

Posted

技术标签:

【中文标题】jquery live & livequery【英文标题】: 【发布时间】:2010-12-25 03:12:57 【问题描述】:

我正在使用 jquery 的负载通过 ajax 引入缩略图。我希望用户能够使用imgPreview plugin 将鼠标悬停在裁剪的拇指上以查看未裁剪的小版本图像。如果他们点击它,然后在灯箱中显示完整尺寸的图像 (fancybox)。

对于灯箱,我有:

$("ul#plant_gallery li a").livequery( function()   
    $(this).fancybox ( 'overlayOpacity': 0.9, 'overlayColor': '#000', );
);

对于工具提示未裁剪的图像悬停,我有:

$('ul#plant_gallery li a').live('mouseover', function()

    if (!$(this).data('init'))
    
        $(this).data('init', true);
        $(this).imgPreview(imgCSS:  width: 200 , srcAttr: 'rel')
        (
            function()
            

            ,

            function()
            
            
        );
        $(this).trigger('mouseover');
    
);

如何将这两者合二为一?我应该使用 jquery 的 live 还是 livequery?感谢您的帮助!

【问题讨论】:

你想通过结合这两者来实现什么?如果你想响应不同的事件(悬停和点击),你需要两个独立的函数来处理它们。 【参考方案1】:

我认为您不需要将它们组合在一起,您是否尝试过:

$("ul#plant_gallery li a").live('click', function()   
    $(this).fancybox ( 'overlayOpacity': 0.9, 'overlayColor': '#000', );
);

并保持其他功能不变?

【讨论】:

以上是关于jquery live & livequery的主要内容,如果未能解决你的问题,请参考以下文章

jQuery中的事件方法,使用on()代替live()

jquery 插件:使用 live() 的工具提示插件

使用 .live() 绑定 jQuery UI 自动完成

Jquery 如何在可拖动对象上使用 .live

jQuery next() 不能与 live() 一起使用

jquery live hover绑定方法