jQuery Mouseenter事件没有启动,它在单击时启动

jQuery Mouseenter event is not firing it is firing when click

本文关键字:启动 单击 jQuery 事件 Mouseenter      更新时间:2024-02-07

jQuery鼠标输入事件未在鼠标输入中触发它在点击时触发

function showOverlap() {
    var hits = $('.follower').collision('#slides li');
    $(hits).trigger('mouseenter');
}
$('.container1').mouseenter(function() {
    showOverlap();
});
$('#slides li').on('mouseenter',function(){
    $('#slides li').removeClass('selectedMenu');
    $(this).addClass('selectedMenu');
});

JsBinhttp://jsbin.com/urEpESAM/19/edit

如果在mouseMove中写入mouseenter事件,这里工作正常,但速度慢得多

试试这个

$(document).on({
    mouseenter: function() {
        $('#slides li').removeClass('selectedMenu');
        $(this).addClass('selectedMenu');
    },
    mouseleave: function() {
       // Do stuff when mouse leaves `#slides li`
    }
}, "#slides li");

如果要触发mouseenter事件,则需要绑定该事件。你的问题不是鼠标输入。

看看这里:http://jsfiddle.net/stryd3r/mA3wy/

您的问题在第行:$(hits).trigger('mouseenter');

这应该可以做到:

 function showOverlap() {
    var hits = $('.follower').collision('#slides li');
    $(hits).trigger('mouseenter');
}
$('.container1').mouseenter(function() {
    showOverlap();
});
$(this).bind('mouseenter',function(){
    alert("in");
    $('#slides li').removeClass('selectedMenu');
    $(this).addClass('selectedMenu');
});

演示