Events 如何在jQuery中重新触发(或延迟触发)“mousedown”事件?

Events 如何在jQuery中重新触发(或延迟触发)“mousedown”事件?,events,jquery-plugins,jquery,Events,Jquery Plugins,Jquery,最近有一个问题困扰着我:在mousedown处理程序中,我在事件上使用.preventDefault来防止拖动时选择文本: $(document).bind('mousedown', function(event){ event.preventDefault(); }); 到目前为止还不错 然后,在按住鼠标按钮的同时,我想等待触发longclick事件(),让longclick处理程序以某种方式恢复原始的mousedown事件,并开始文本选择,就像没有阻止事件的默认值一样 有没有办法延

最近有一个问题困扰着我:在
mousedown
处理程序中,我在事件上使用
.preventDefault
来防止拖动时选择文本:

$(document).bind('mousedown', function(event){
    event.preventDefault();
});
到目前为止还不错

然后,在按住鼠标按钮的同时,我想等待触发
longclick
事件(),让
longclick
处理程序以某种方式恢复原始的
mousedown
事件,并开始文本选择,就像没有阻止事件的默认值一样

有没有办法延迟触发本机鼠标事件?

.trigger
是否能够以某种方式接受现有(存储的)事件对象?例如像这样的事情

var originalEvent;

$(document)
    .bind('mousedown', function(event){
        event.preventDefault();
        originalEvent= event;
    })
    .bind('longclick', function(event){
        $(event.target).trigger(originalEvent)
    })
我在能够拖动整个文本段落之后,仍然可以在段落内执行文本选择


欢迎提供所有答案、建议和想法

将事件对象传递给
触发器
对于jQuery来说是有效的(与jQuery绑定的事件处理程序将被执行,并将对象作为参数接收),这允许您执行一些很酷的操作,例如,但不会发生默认操作。大多数浏览器都支持DOM level 2规范,除了,它有,这是非常无用的,因为它不会触发默认操作。

OK,Tgr。谢谢你的澄清。我也将这个问题发布到jQuery论坛上,得到了完全相同的答案()。看来这毕竟是不可能的。真倒霉