我使用jQuery将元素移动到页面上的其他位置。元素处于“悬停”状态,因为单击鼠标时光标已悬停在该元素上。当元素到达其新位置时,它将保留其“悬停”状态。我该如何清除?

最佳答案

这就是我使用的(请注意,这是一个插件,因此应放在您的$(document).ready()语句之外):

(function($) {
/*
    UnHover function
*/
    $.fn.unhover = function(ev) {
        this.each(function() {
            $(this).addClass('unhover').mouseout(function(){
                $(this).removeClass('unhover');
            });
        });
        return this;
    };
})(jQuery);


像这样附加它:

$(document).ready(function(){
    $(a).click(function(){
        $(this).unhover();
        // other onclick code
        return false;
    });
});


CSS需要.unhover带有元素自然状态的声明,如下所示:

a, a.unhover { color:#fff; }
a:hover {
    color: red;
    font-weight:bold;
}

关于jquery - 用jQuery“UnHover”移动元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1420238/

10-10 13:07