jquery-ui – 为什么单击拖动句柄不会偷走文本焦点?

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

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

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

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

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

谢谢

最佳答案 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

点赞