Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengendalikan Peristiwa Klik pada Medan Input Dilumpuhkan Merentasi Pelayar?

Bagaimanakah Saya Boleh Mengendalikan Peristiwa Klik pada Medan Input Dilumpuhkan Merentasi Pelayar?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-19 14:14:09570semak imbas

How Can I Handle Click Events on Disabled Input Fields Across Browsers?

Klik Pengendalian Acara pada Input Dilumpuhkan

Dalam dokumen HTML, medan input yang dilumpuhkan tidak bertindak balas kepada sebarang acara tetikus. Walaupun mungkin untuk menyebarkan peristiwa daripada input yang dilumpuhkan kepada elemen induk dalam sesetengah penyemak imbas, Firefox tidak menyokong tingkah laku ini. Oleh itu, penyelesaian adalah perlu untuk mendayakan pengendalian acara pada input yang dilumpuhkan merentas penyemak imbas.

Satu penyelesaian ialah meletakkan elemen div telus pada input yang dilumpuhkan. Div ini akan menangkap peristiwa klik dan mencetuskan tindakan, seperti mengalih keluar atribut yang dilumpuhkan daripada input dan tetapan fokus.

Contoh HTML:

<div>

jQuery:

$("div > div").click(function (evt) {
    $(this).hide().prev("input[disabled]").prop("disabled", false).focus();
});

Skrip ini akan menyembunyikan elemen div selepas satu klik dan membolehkan input yang dilumpuhkan. Input juga akan menerima fokus, membolehkan pengguna berinteraksi dengannya dengan segera.

Contoh Kerja:

http://jsfiddle.net/RXqAm/170/

Dengan melaksanakan penyelesaian ini, pembangun boleh memastikan bahawa medan input yang dilumpuhkan masih boleh menerima peristiwa klik dan mencetuskan tindakan yang diingini dalam semua pelayar utama.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengendalikan Peristiwa Klik pada Medan Input Dilumpuhkan Merentasi Pelayar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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