为什么单击拖动手柄不会偷走文本焦点?

时间:2013-06-04 11:31:46

标签: jquery-ui browser

我在http://jsfiddle.net/MuCeD/2/处有一些带有一些文字的div。如果我双击div中的“sample”一词,它会突出显示,如果我然后单击页面上的任何其他位置,文本将变为非突出显示 - 除了如果我点击蓝色拖动手柄第二个方框。然后“采样”仍然突出显示。

如果删除句柄规范,如下所示

$('#box').draggable();

因此您可以从左侧框中的任何位置拖动,然后您可以单击该框中的任意位置而不会丢失文本焦点。

有谁知道这里发生了什么?拖动手柄可以做些什么来防止窃取焦点?

由于

1 个答案:

答案 0 :(得分:2)

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