我有一个按钮,我决定触发该按钮:
$(button_name).trigger("click");
该函数的处理程序要求左键在使用鼠标触发时触发单击,但也通过触发使用代码来接受点击,如上面所示的行。如何创建条件语句来评估这些条件是否为真?
if((navigator.appName === "Microsoft Internet Explorer" && window.event.button === 1)
|| window.event.button == 0
|| ...){
/* If true, do this */
}
答案 0 :(得分:4)
click处理程序的第一个参数是事件对象。如果它是一个物理鼠标点击它将具有clientX
和clientY
属性 - 如果它是程序化的,它不会。
$('#button').click(function (e) {
if (e.clientX) {
// physical click
} else {
// program click
}
});
答案 1 :(得分:0)
如果您正在尝试获得完整的跨浏览器支持和未来证明,我认为您不能,js在添加和修改属性方面非常合规,但我的问题是“你应该吗?”有几次模拟鼠标点击的能力实际上节省了大量的时间和精力。