我在 http://jsfiddle.net/MuCeD/2/ 有一个带有一些文本的 div .如果我双击 div 中的单词“sample”,它会突出显示,然后如果我单击页面上的任何其他地方,文本将变为未突出显示 - 除非我单击第二个框的蓝色拖动 handle 。然后“采样”保持突出显示。
如果删除 handle 规范,如下所示,
$('#box').draggable();
因此您可以从左侧框中的任何位置拖动,然后您可以单击该框中的任意位置而不会丢失文本焦点。
有谁明白这里发生了什么?拖动 handle 如何防止窃取焦点?
谢谢
最佳答案
jQuery UI draggable
取消其 mousedown
事件。这就是为什么它不会获得焦点,因此不会窃取其他元素的焦点。您可以在可拖动上下文之外使用以下示例。
HTML:
<a href="#">Some link</a>
<a class="not-focusable" href="#">No focus</a>
JavaScript:
$('.not-focusable').mousedown(function (event) {
return false;
});
JSFiddle
关于jquery-ui - 为什么单击拖动 handle 不会窃取文本焦点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16916711/