Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mendapatkan Pengikatan Peristiwa kepada Elemen Tertentu dengan jQuery?

Bagaimana untuk Mendapatkan Pengikatan Peristiwa kepada Elemen Tertentu dengan jQuery?

DDD
DDDasal
2024-11-08 09:09:011043semak imbas

How to Retrieve Event Bindings to a Specific Element with jQuery?

Mengambil semula Pengikatan Peristiwa dengan jQuery

Dalam pembangunan web, selalunya perlu untuk melampirkan pengendali acara pada elemen untuk bertindak balas kepada interaksi pengguna. jQuery menyediakan cara mudah untuk mengikat acara kepada elemen, tetapi bagaimana anda boleh mendapatkan semula senarai semua peristiwa yang terikat pada elemen tertentu?

Pertimbangkan contoh berikut di mana dua pengendali acara terikat pada pautan:

<a href='#'>
$(function() {
  $('#elm').click(_f);
  $('#elm').mouseover(_m);
});

function _f() { alert('clicked'); }
function _m() { alert('mouse over'); }

Mengambil Peristiwa Terikat

Untuk mendapatkan senarai peristiwa terikat pada elemen, jQuery menawarkan kaedah $._data. Kaedah ini boleh digunakan untuk mengakses data dalaman yang dikaitkan dengan elemen, termasuk sebarang peristiwa yang terikat oleh jQuery.

$._data($('#elm')[0], "events");

Output $._data akan menjadi objek yang mengandungi peristiwa yang terikat pada elemen. Setiap acara diwakili sebagai tatasusunan pengendali. Sebagai contoh, hasil daripada kod di atas mungkin kelihatan seperti:

{
  "click": [function() { alert('clicked'); }],
  "mouseover": [function() { alert('mouse over'); }]
}

Penerokaan Lanjut

Dalam versi moden jQuery, $._data ialah kegunaan dalaman kaedah sahaja. Untuk mendapatkan semula pengikatan acara, anda juga boleh menggunakan Event Bubbling Viewer dalam alatan pembangun penyemak imbas anda. Dalam Chrome, mengklik kanan pengendali acara dalam konsol dan memilih "lihat definisi fungsi" akan mendedahkan kod tempat pengendali acara ditakrifkan.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Pengikatan Peristiwa kepada Elemen Tertentu dengan jQuery?. 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