中断所有鼠标按下事件以模拟鼠标单击



当鼠标按下时,我想触发元素上的点击事件。此外,我想为html页面中的所有元素启用此功能。

在Chrome上使用jQuery可能吗?

这是我的第一次尝试;

$.fn.mousedown = function (onclick) {
    this.bind("click", function (e) { onclick.call(this, e); });  
    return this;
};

但是这个mousedown元素是在点击后触发的。

$(document).on('mousedown', function (e) { $(e.target).trigger('click') })

但我不确定这对什么有用。

为了防止第二次点击(这是正常的点击),你必须做一些额外的工作

$(document).on('mousedown', function (e) {
    $(e.target).trigger('click').once('click', function (e) {
        e.preventDefault();
        e.stopPropagation();
    });
})

最新更新