jquery-ui - 为什么单击拖动 handle 不会窃取文本焦点?

标签 jquery-ui browser

我在 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/

相关文章:

使用默认属性值的 jQuery 范围 slider

javascript - 结合 $(this) 和 $ ("li:eq(ui.item.index())")

jquery - 在嵌套列表上应用 jquery-ui droppable

javascript - 使用 Jquery 将我页面上的 div 插入到我页面的另一部分

jquery - 手动激活选项卡 jquery ui 1.10.3

android - 单击嵌入式链接时 WebView 消失

jquery - Gzipped JSON 文件未解压缩

html - 如何在 JSP 中创建一个网页以适应不同的窗口大小?

css - IE8 忽略框大小

javascript - 通过javascript打开firebug lite