Apakah ada metode jQuery unfocus?


193

Bagaimana saya bisa tidak memfokuskan teks atau input? Saya tidak dapat menemukan $('#my-textarea').unfocus();metode?


juga bukan fungsi jQuery .focusout()yang sedikit berbeda dari blur() api.jquery.com/focusout , mengutip dokumenThis is distinct from the blur event in that it supports detecting the loss of focus on descendant elements (in other words, it supports event bubbling)
— Adrien Be

Jawaban:


335
$('#textarea').blur()

Dokumentasi di: http://api.jquery.com/blur/


Aneh. Saya mencoba mengaburkan () sebelum jendela kehilangan fokus sehingga ketika saya kembali, area teks tidak dipilih secara default. Tampaknya tidak berfungsi :(
— Alec Smart

sesuatu seperti $ ('window'). blur (function () {$ ('# textarea'). blur ();});
— Alec Smart

mungkin Anda perlu mengaburkan area teks pada fokus jendela?
— Geoff

7
mungkin Anda mencoba untuk mengikat acara sebelum DOM dimuat. Cobalah untuk meletakkan kode di penangan siap halaman seperti ini: $ (document) .ready (function () {$ ('# textarea'). Blur ()})

bekerja dengan baik $('#textarea').bind('blur', function() ...)juga
— Fedir RYKHTIK

10

Berdasarkan pertanyaan Anda, saya yakin jawabannya adalah bagaimana memicu keburaman , bukan hanya (atau bahkan) mengatur acara:

 $('#textArea').trigger('blur');

Jawaban ini lebih masuk akal bagi saya. Saya ingin tahu cara menghapus sorotan atau membuat input teks saya tidak fokus. Saya tahu .blur () ada tetapi saya tidak benar-benar mengerti sintaks yang benar untuk penggunaan ini. +1
— Partack

7
Tanpa parameter, .blur()adalah jalan pintas untuk .trigger("blur") api.jquery.com/blur
— andreszs


0

Ini bekerja untuk saya:

// Document click blurer
$(document).on('mousedown', '*:not(input,textarea)', function() {
    try {
        var $a = $(document.activeElement).prop("disabled", true);
        setTimeout(function() {
            $a.prop("disabled", false);
        });
    } catch (ex) {}
});

0

Saya suka pendekatan berikut karena berfungsi untuk semua situasi:

$(':focus').blur();

-12

Jadi kamu bisa melakukan ini

$('#textarea').attr('enable',false)

Cobalah dan berikan umpan balik


11
Ini akan menonaktifkan area teks, bukan memfokusnya.
— Kurotsuki
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.