Отключите выбор на веб-странице, НО на формах или люди не могут выбирать поля ввода мышью - PullRequest
2 голосов
/ 01 июня 2011

Я пытаюсь сделать всю страницу невыбираемой, и я сделал это с помощью этого:

$('*').disableSelection();

, однако, когда вы заполняете форму, вы не можете выбрать ее с помощьющелкнув, для этого я изменил свой код на:

$('*:not(input)').disableSelection();

, но это тоже не сработало ... я попытался вызвать enableSelection () для $ ('input'), но это также не моглопереопределить disableSelection ... Есть идеи?

Ответы [ 2 ]

4 голосов
/ 01 июня 2011

Это действительно плохая идея, и она будет трудной и ресурсоемкой для выполнения.

.disableSelection() отключит выбор текущего элемента и всех его дочерних элементов, поэтому даже если вы игнорируете определенные элементы в селекторе, они не будут доступны для выбора, если их родительский элемент отключил выбор.

Почему отключение выделения всего документа - не просто плохая идея, а плохая практика, потому что это мешает удобству использования. Это то, что должно быть зарезервировано для некоторых очень специфических случаев, таких как повышение безопасности или внедрение защиты от спама, таких как капчи; тогда вам, возможно, придется сократить удобство использования.

.disableSelection -метод был создан для того, чтобы исключить несоответствующий контент, выбранный, например, определенные элементы пользовательского интерфейса, такие как вкладки, кнопки или другие описательные элементы пользовательского интерфейса. Так что это действительно вопрос улучшения юзабилити, а не затруднения.

В конце концов, это далеко не гарантированный способ помешать пользователям выбирать ваш контент, и это только сделает их раздраженными и менее склонными к возврату.

2 голосов
/ 01 июня 2011

Я изменил его, чтобы использовать: ввод (поскольку он включает в себя все типы ввода), но ввод также работал: http://jsfiddle.net/infernalbadger/kWB6g/

...