Bagaimana untuk Memfokuskan Medan Input Klon dalam IE dan Opera?

Susan Sarandon
Lepaskan: 2024-10-31 13:23:01
asal
319 orang telah melayarinya

How to Focus a Cloned Input Field in IE and Opera?

Isu Medan Input FOKUS dalam IE dan Opera

Masalah:

Kod di bawah gagal untuk memfokuskan medan input klon dalam Internet Explorer 7:

function change() {
    var input = document.getElementById('pas');
    var input2 = input.cloneNode(false);
    input2.type = 'password';
    input.parentNode.replaceChild(input2, input);
    input2.focus();
}
Salin selepas log masuk

Penyelesaian untuk IE:

Internet Explorer terkenal "malas" apabila memfokuskan elemen. Untuk menyelesaikan masalah ini, anda boleh menggunakan fungsi setTimeout:

setTimeout(function() { document.getElementById('myInput').focus(); }, 10);
Salin selepas log masuk

Penyelesaian untuk Opera:

Dalam Opera, anda mungkin menghadapi masalah menetapkan fokus pada elemen yang dicipta secara dinamik atau muncul selepas halaman dimuatkan. Rujuk sumber berikut untuk penyelesaian yang berpotensi:

  • [Cara menetapkan fokus dalam indeks yang diperlukan pada kotak teks untuk Opera](https://stackoverflow.com/questions/2099366/how-to-set- fokus-dalam-indeks-diperlukan-pada-kotak-teks-untuk-opera)

Dipertingkat Penyelesaian:

Untuk mengendalikan kes di mana elemen mungkin tidak tersedia serta-merta, anda boleh menggunakan coretan berikut:

setTimeout(

    function( ) {

        var el = document.getElementById( "myInput" ) ;
        ( el != null ) ? el.focus( ) : setTimeout( arguments.callee , 10 ) ;

    }

, 10 ) ;
Salin selepas log masuk

Kod ini cuba memfokuskan semula elemen setiap 10 milisaat sehingga ia tersedia, menangani isu yang berpotensi dengan pemuatan perlahan atau penampilan elemen tertunda.

Atas ialah kandungan terperinci Bagaimana untuk Memfokuskan Medan Input Klon dalam IE dan Opera?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!