Jquery绑定单击并悬停,如何检查是否单击

时间:2023-02-03 14:12:56

I have combined function like this(simplified version):

我有这样的功能(简化版):

$('label').bind('click hover', function() {
    $('label').removeClass("active");
    $(this).addClass("active");
});

How can I add an if to check if it is a click?

如何添加if来检查是否是点击?

1 个解决方案

#1


8  

Use event.type:

$('label').bind('click hover', function(event) {
    if(event.type == 'click') {
        // do stuff
    }
    $('label').removeClass("active");
    $(this).addClass("active");
});

Demo: http://jsfiddle.net/jtbowden/sqvDy/

Note, the demo uses .on(), which is the new method of event binding for jQuery 1.7+, replacing .bind(), .live(), and .delegate().

注意,该演示使用.on(),这是jQuery 1.7+的事件绑定的新方法,取代了.bind(),. live()和.delegate()。

#1


8  

Use event.type:

$('label').bind('click hover', function(event) {
    if(event.type == 'click') {
        // do stuff
    }
    $('label').removeClass("active");
    $(this).addClass("active");
});

Demo: http://jsfiddle.net/jtbowden/sqvDy/

Note, the demo uses .on(), which is the new method of event binding for jQuery 1.7+, replacing .bind(), .live(), and .delegate().

注意,该演示使用.on(),这是jQuery 1.7+的事件绑定的新方法,取代了.bind(),. live()和.delegate()。