如何在javascript/jquery中区分鼠标点击和.click()?

ome*_*ega 3 html javascript jquery click

在javascript/jquery中,我有一个按钮,其定义的click事件如下:

$("#target").click(function() {
    var mouse_click = ________________;
    // do stuff
    if (mouse_click) {
        // do stuff  
    }
    // do stuff
});
Run Code Online (Sandbox Code Playgroud)

我也有代码要做

$('#target').click();
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得变量mouse_clicktrue,如果用户使用鼠标,而变量是手动点击标签false,当我用点击标签.click()功能?

谢谢

Joe*_*Joe 6

你可以用这个:

$("#target").click(function(e) {
    var mouse_click = !(e.originalEvent === undefined);
    // do stuff
    if (mouse_click) {
        // do stuff  
    }
    // do stuff
});
Run Code Online (Sandbox Code Playgroud)

或者您可以检查e.isTrigger在jQuery中触发事件时设置的是哪个.您只需要将第二行更改为:

var mouse_click = !e.isTrigger;
Run Code Online (Sandbox Code Playgroud)

两者都可以,但你可能更喜欢第二种选择,因为它更简洁一些.

这是工作:http://jsfiddle.net/2U3Us/4/