为 jQuery UI draggable() 设置超时以防止锁定效果

Posted

技术标签:

【中文标题】为 jQuery UI draggable() 设置超时以防止锁定效果【英文标题】:set timeout for jQuery UI draggable() to prevent locking effect 【发布时间】:2010-10-07 19:01:08 【问题描述】:

我正在使用 draggable(),但有时 draggable() 似乎会产生锁定效果,即使在释放鼠标按钮后拖动效果仍然存在。一旦发生这种情况,唯一的解决办法就是刷新页面,这对于基于 ajax 的网站来说是一种糟糕的方式。

所以使用UI docs,我试图找出一种在拖动开始时设置超时的方法,这样如果拖动未在 x 秒内完成,则会调用 dragstop 事件。

我想这不会很难,但到目前为止我还不能实现它。任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

我不想建议这个,但我会花更多的时间来尝试了解为什么您无法通过可拖动的方式正常工作,而不是询问有关在创可贴修复中进行黑客攻击的问题...

【讨论】:

【参考方案2】:

试试这样的:

var stopDrag = function() 
    $('.selector').draggable('destroy');


$('.selector').draggable(
    start: function(event, ui)  
        setInterval(stopDrag, 2000); 
    
);

【讨论】:

以上是关于为 jQuery UI draggable() 设置超时以防止锁定效果的主要内容,如果未能解决你的问题,请参考以下文章

jQuery UI draggable兼容移动端

jQuery UI draggable兼容移动端

获取 JQuery ui.draggable 的属性

Jquery UI Draggable:将帮助器对齐鼠标位置

jQuery UI-Draggable 参数集合

JQuery——UI型插件