Можно ли отключить проверку орфографии в текстовой области через JavaScript? - PullRequest
14 голосов
/ 15 декабря 2010

Можно ли отключить проверку орфографии в текстовой области с помощью JavaScript?

Я смотрю на атрибут HTML5 'spellcheck' и могу заставить его работать самостоятельно.,Однако я хотел бы иметь возможность изменить этот атрибут с помощью JavaScript.

После прочтения документации, представленной по ссылке выше, я собрал следующие строки кода (фрагменты из файла большего размера; я знаю, что онине будет работать самостоятельно):

document.querySelector("#editor").spellcheck = "false";

и

document.querySelector("#editor").spellcheck = "true";

Но, похоже, это не сработает.Я сделал ошибку или неправильно понял документацию?(Бесполезно, консоль JavaScript в Google Chrome не возвращает ошибку.) Или есть другой способ сделать это?

Ответы [ 3 ]

20 голосов
/ 15 декабря 2010

Вы устанавливаете его на String "true" (который является значением true) и на String "false" (который также является значением true).

Использовать Booleans , а не Strings .Избавьтесь от цитат.

2 голосов
/ 17 февраля 2012

По крайней мере, для меня различие между строкой и логическим значением не влияет на атрибуты HTML в JavaScript - Javascript интерпретирует "false" == false.

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

var editor = document.getElementById("editor");
editor.spellcheck = false;
editor.focus();
editor.blur();

Фокус заставляет браузер переоценивать текстовую область, в этом случае без проверки орфографии.Надеюсь, это поможет!

0 голосов
/ 15 декабря 2010

Предполагая, что это базовый атрибут.

Следующее должно работать без библиотеки:

document.getElementById('editor').setAttribute('spellcheck', 'true'); // or false

и с JQuery:

$('#editor').attr('spellcheck', 'true'); // or false
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...