HTML metin alanlarında yazım denetimini devre dışı bırak


287

Bir şekilde HTML metin alanlarında yazım denetimini devre dışı bırakabilir miyim (örneğin Safari'de görüldüğü gibi)?

Yanıtlar:


420

Güncelleme : Bir yorumcu tarafından önerildiği gibi ( iPhone'daki metin girişlerindeki yazım denetleyicisini nasıl devre dışı bırakabilirim ), tüm masaüstü ve mobil tarayıcıları işlemek için bunu kullanın.

<tag autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>

Orijinal yanıt: Javascript kullanıcı ayarlarını geçersiz kılamaz, bu nedenle metin alanlarından başka bir mekanizma kullanmazsanız, bu mümkün değildir (veya olmamalıdır).


4
bu neden kabul edildi? bu mantıklı değil çünkü tarayıcı izin veriyorsa kullanıcı ayarlarını geçersiz kılabilir. ms2ger'in cevabına bakınız.
usr

1
O zaman en iyi cevap olduğu için. Michiel'in geri dönmediğini ve diğerini doğru olarak işaretlemediğini tahmin ediyorum. Daha iyi bir cevap olduğu için bu benim için iyi olur.
Eric Wendelin

2
Tarayıcı uyumluluğunu not etmek önemlidir - Mobile Safari (iOS) örneğin etiketi kabul etmiyor
wufoo.com/html5/attributes/17-spellcheck.html

3
stackoverflow.com/questions/3416867/…autocorrect="off" Mobil Safari için buna ( ) doğru cevap veriyor - spellcheck=çalışmıyor
Chris S

1
autoComplete = "off" olmalıdır autoCorrect = "off" autoCapitalize = "off" spellCheck = "false"
zaman

208

Evet, HTML5spellcheck="false" tarafından tanımlandığı gibi kullanın , örneğin:

<textarea spellcheck="false">
    ...
</textarea>

1
MDN'nin farklı tarayıcılar ve öğeler için varsayılan yazım denetimi değerini gösteren bir tablosu vardır: developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/…
Paul

2
"Bilinmeyen DOM özelliği yazım denetimi. Bunu mu demek istediniz: spellCheck?" Kullanmak spellChecktatmin edici görünüyor. Sadece tepki veren bir şey olabilir.
Shanimal

3
@Shanimal Evet, tepki DOM özellikleri için deve-case kullanır. Bkz reactjs.org/docs/introducing-jsx.html
Sookie

13

Grammarly için şunları kullanabilirsiniz:

<textarea data-gramm="false" />

7

Bir IFrame, en azından Chrome'da bir metin alanı olarak yazım denetleyicisini (içerik düzenlenebilir olarak true olarak ayarlanmışsa) "tetikler".


1
"Düzenlenebilir gerçek değerine ayarla" için +1 gerçek hile
AT

4

Aşağıdaki kod snippet'i tüm öğeler textareave input[type=text]öğeler için devre dışı bırakır :

(function () {
    function disableSpellCheck() {
        let selector = 'input[type=text], textarea';
        let textFields = document.querySelectorAll(selector);

        textFields.forEach(
            function (field, _currentIndex, _listObj) {
                field.spellcheck = false;
            }
        );
    }

    disableSpellCheck();
})();
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.