JQuery - 向类添加鼠标事件侦听器

时间:2010-12-13 18:02:38

标签: jquery

<div class="teamMain">
    <div class="teamScroll">
        PRIMO
    </div>

    <div class="teamScroll">
        SECONDO
    </div>

    <div class="teamScroll">
        TERZO
    </div>
</div>

我想通过将类 teamScroll 作为参考,为每个div添加一种监听器(例如mouseover或mouseout)。

我知道有委托方法,但它仅适用于 jquery-1.4.2 版本(之前发布的另一个problem)用IE6打破了一些功能。

除非为N div设置N侦听器,还有其他方法可以做到这一点吗?

干杯

3 个答案:

答案 0 :(得分:5)

您可以使用普通.hover()处理程序,如下所示:

$(".teamScroll").hover(function() {
  //mouse on the item
}, function() {
  //mouse off the item
});

这就是总是有效的方式(但是2n处理程序就像你问的那样),假设1.4.2不是一个选项...如果你至少有1.3.2,那就是.live()喜欢这样:

$(".teamScroll").live("mouseenter", function() {
  //mouse on the item
}).live("mouseleave", function() {
  //mouse off the item
});

这里的区别在于.live()会运行一个额外的选择器,事件会一直冒泡到document ...以及实际上映射到{{ 1}}和mouseover在封面下,这通常是不受欢迎的。

相反,我建议使用.delegate()路由,看看jQuery 1.4.4是否修复了1.4.2中的问题,1.4.3 / 1.4.4中有几个AJAX调整。

答案 1 :(得分:1)

尝试

$('.teamScroll').bind('onmouseover', function() {
  alert('Mouseover');
});

答案 2 :(得分:0)

$('.teamScroll').mouseover(function(){

});