我想将originalEvent> MouseEvent> isTrusted更改为true,因此无法检测是否通过jQuery触发了事件。通常,您可以这样进行操作(clientX和clientY可以正常工作):
$('#name').trigger({
originalEvent: new MouseEvent('click', {
clientX: 541,
clientY: 346,
isTrusted: true
}),
type: "mousedown"
});
我检测到这样的事件:
var element = document.getElementById('name');
$(element).on('mousedown', function(e) {
console.log(e);
if (e.originalEvent.isTrusted) {
console.log('real click');
} else {
console.log('programmatic click'); // shows this message
}
});
我知道isTrusted只是“可枚举的”,因此我也愿意接受其他建议。