如何在jquery-UI对话框中禁用文本选择而不禁用表单元素

时间:2010-07-17 05:17:47

标签: javascript jquery

我正在使用jQuery-UI来构建一个包含表单输入的对话框(具体是输入和选择),但我不希望用户能够意外地突出显示对话框中使用的文本,单选按钮和元素因为这看起来很丑陋(在ipad上偶然选择是非常容易的)。 我一直在使用jQuery插件disableTextSelect,并将其应用于对话框类。然而,这使我的输入元素无法点击。

到目前为止我尝试过的事情:

$("#mydialog").children(":not(input)").disableTextSelect() // everything was unselectable
$("#mydialog").disableTextSelect(); $("input","#mydialog").enableTextSelect() // everything was unselectable

2 个答案:

答案 0 :(得分:0)

可能是您使整个对话框无法选择的结果 - 这可能也会影响子输入。您需要将它应用于对话框的子项,不包括输入,而不是对话框本身。

答案 1 :(得分:0)

虽然它并不理想,但我通过以下方式重现了内置事件的效果:

$("#mydialog").disableTextSelect();
$("input,textarea").mousedown(function (e) {
  $(this).trigger('focus');
});