Rumah > hujung hadapan web > tutorial js > Bagaimanakah saya boleh mendapatkan semula senarai pendengar acara yang terikat pada elemen menggunakan jQuery?

Bagaimanakah saya boleh mendapatkan semula senarai pendengar acara yang terikat pada elemen menggunakan jQuery?

Linda Hamilton
Lepaskan: 2024-11-08 02:52:02
asal
419 orang telah melayarinya

How can I retrieve a list of event listeners bound to an element using jQuery?

Mendapatkan semula Pendengar Acara yang Ditugaskan pada Elemen Menggunakan jQuery

Dalam JavaScript, melampirkan pengendali acara pada elemen ialah amalan biasa untuk meningkatkan interaksi pengguna. jQuery menyediakan keupayaan pengendalian acara yang mantap, menjadikannya mudah untuk menetapkan dan mengurus pendengar acara pada elemen. Ini menimbulkan persoalan: bolehkah kita mendapatkan semula senarai peristiwa yang terikat pada elemen tertentu menggunakan jQuery?

Masalah:

Senario: Kami mempunyai elemen dengan ID " elm" dan kami telah melampirkan dua pengendali acara pada pautan ini – satu untuk acara klik dan satu lagi untuk acara alih tetikus.

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

function _f(){alert('clicked');}
function _m(){alert('mouse over');}
Salin selepas log masuk

Adakah terdapat cara untuk mendapatkan senarai semua acara yang dikaitkan dengan elemen dengan ID "elm"?

Jawapan:

Dalam versi terbaru jQuery, kaedah $._data boleh digunakan untuk mendapatkan maklumat tentang elemen, termasuk sebarang peristiwa terikat kepadanya. Perlu diingat bahawa $._data ialah kaedah penggunaan dalaman sahaja.

// Bind up a couple of event handlers
$("#foo").on({
    click: function(){ alert("Hello") },
    mouseout: function(){ alert("World") }
});

// Lookup events for this particular Element
$._data( $("#foo")[0], "events" );
Salin selepas log masuk

$._data akan mengembalikan objek yang mengandungi peristiwa yang dilampirkan pada elemen yang ditentukan.

{ 
    click: [
        {
            handler: function(){ alert("Hello") }  // The defined click handler
        } 
    ],
    mouseout: [
        {
            handler: function(){ alert("World") }  // The defined mouseout handler
        }
    ] 
}
Salin selepas log masuk

Dalam Chrome, anda boleh klik kanan fungsi pengendali dan pilih "lihat definisi fungsi" untuk mengesan asalnya dalam kod anda.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan semula senarai pendengar acara yang terikat pada elemen menggunakan jQuery?. 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