Spellcheck = false на contentEditable элементах
Для нормальных элементов ввода вы можете отключить проверку орфографии с помощью атрибута HTML (по крайней мере, под FF). Тот же spellcheck="false"
, похоже, не работает над элементом contentEditable. Есть ли другое решение для элементов contentEditable?
Ответы
Ответ 1
Я не уверен, что это то, к чему вы клоните, но у меня было то, что похоже на аналогичную проблему с удалением подчеркивания орфографии из элементов contentEditable. Проблема заключается в том, что при установке атрибута spellcheck
значение false, любые слова, которые были подчеркнуты для орфографических ошибок, будут содержать это подчеркивание, пока вы не сосредоточитесь на элементе contentEditable.
Следующий хак должен сделать трюк:
element.spellcheck = false;
element.focus();
element.blur();
Надеюсь, что это поможет!
Ответ 2
В Gecko все элементы contenteditable
проверяют орфографию на основе атрибута/свойства spellcheck
в элементе <body>
.
Ответ 3
Основываясь на том, что сказал Нил, я придумал этого парня:
$('body').attr("spellcheck",false)
По умолчанию все мои contenteditable divs не используют проверку орфографии. Я планирую использовать .blur и .focus, чтобы включить проверку орфографии для отдельных divs по мере необходимости.
Ответ 4
Даже игнорируя ошибки браузера, вы не можете отключить проверку орфографии, все, что вы можете сделать, это предложить агенту пользователя, что он не проверяет проверку. Если вы посмотрите раздел спецификации, в котором описывается алгоритм определения того, какое заклинание можно проверить здесь, первые два шага:
- Если пользователь отключил проверку этого текста, проверка будет отключена.
- В противном случае, если пользователь принудительно проверяет, чтобы этот текст всегда был включен, проверка включена.
Пользовательские настройки всегда переопределяют атрибуты.