如何在javascript/jquery中区分鼠标单击和.click()?
在javascript/jquery中,我有一个按钮,它有一个单击事件,定义如下:如何在javascript/jquery中区分鼠标单击和.click()?,javascript,jquery,html,click,Javascript,Jquery,Html,Click,在javascript/jquery中,我有一个按钮,它有一个单击事件,定义如下: $("#target").click(function() { var mouse_click = ________________; // do stuff if (mouse_click) { // do stuff } // do stuff }); 我还有代码要做 $('#target').click(); 如果用户使用鼠标手动单击标记,并且
$("#target").click(function() {
var mouse_click = ________________;
// do stuff
if (mouse_click) {
// do stuff
}
// do stuff
});
我还有代码要做
$('#target').click();
如果用户使用鼠标手动单击标记,并且当我使用.click()函数单击标记时,变量mouse\u click
为true
,如何使变量为false
谢谢您可以使用这个:
$("#target").click(function(e) {
var mouse_click = !(e.originalEvent === undefined);
// do stuff
if (mouse_click) {
// do stuff
}
// do stuff
});
或者您可以检查e.isTrigger
,只要jQuery中触发事件,就会设置它。您只需将第二行更改为:
var mouse_click = !e.isTrigger;
两者都可以,但您可能更喜欢第二个选项,因为它更简洁
这里它起作用了:谢谢,我刚用了副本中的答案,它起作用了。使用有什么理由吗代码>这里是接线员吗?我知道JS有时会进行奇怪的转换,但我倾向于更简单的!(e.originalEvent==未定义)
和!e、 isTrigger
,我自己。@XavierHolt-说得好,我一定忘了。我刚刚更新了我的答案和小提琴。