页面上有很多 div(接近 20 个),它们都是 jQuery-UI 可调整大小和可拖动的。还有一些基于 css 的更改会在每个 div
的鼠标悬停和鼠标移出时触发。在使用这些 div 的过程中,有时,其中一个会“卡住”,即无法再被拖动。使用 Firebug 和控制台,我发现它确实有两个类:ui-draggable
和 ui-ressized
但它仍然只是“卡住”。这是页面上 div 过多时通常会发生的情况吗?只是 jQuery-UI 就这样卡住了?大多数时候一切都按预期工作,有时任何 div
突然无法移动。
我的使事物可拖动的代码很简单。对于每个 div,我都有一个可以自行运行的插件,其部分代码是:
$this.draggable({
cursor: 'move'
});
最佳答案
我最近遇到了这个问题......我不知道原因是什么。据我所知,这可能是由鼠标处理程序周围发生的事情引起的 - 可能意外地重新绑定(bind)了 draggable
正在使用的东西,但我看不到任何迹象。无论哪种方式,draggable 都会默默地失败,并且恢复我正在处理的更改并没有帮助 - 当天开始时有效的代码现在也失败了。
这对我来说是一个迹象,表明我的浏览器和开发服务器的交互方式有些奇怪,因为该代码之前可以工作,但现在已经停止了。我的解决方案是停止服务器,关闭浏览器,运行 git clean -fdx - 小心那个,其他源代码控制系统存在 - 在我的项目上,然后重新启动服务器和客户端。嘿,很快我的旧东西就起作用了——当我从 git 存储中取出新代码时,它也起作用了。
关于javascript - jQuery UI 可拖动随机停止工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14922427/