Dalam pembangunan bahagian hadapan, kami selalunya perlu menggunakan rangka kerja JavaScript untuk mengendalikan beberapa logik interaksi yang kompleks. Antaranya, jQuery ialah rangka kerja yang digunakan secara meluas yang menyediakan satu siri API mudah dan pantas untuk mengendalikan elemen DOM, mengendalikan acara dan operasi lain. Apabila menggunakan jQuery untuk mengikat pengendali acara, anda selalunya perlu mendapatkan fungsi pengendali terikat. Artikel ini akan memperkenalkan pelbagai cara untuk mendapatkan pengikatan acara jQuery.
1. Gunakan data()
Dalam jQuery, anda boleh menggunakan kaedah .data() untuk mendapatkan data elemen. Sebagai contoh, kita boleh mengikat pengendali acara kepada elemen:
$("#myButton").on("click", function() { alert("Clicked!"); });
Sekarang, kita boleh menggunakan kaedah data()
untuk mendapatkan pengendali acara terikat:
var clickHandler = $("#myButton").data("events").click[0].handler;
Kod di atas melepasi < Kaedah 🎜> memperoleh fungsi pengendali pertama yang terikat pada acara data()
, iaitu fungsi tanpa nama yang ditakrifkan di atas. Perlu diingatkan bahawa kaedah ini tidak digunakan dalam jQuery versi 3.x dan lebih baru, dan penggunaannya tidak disyorkan. click
untuk mendapatkan data terikat bagi elemen tersebut. Sebagai contoh, kita boleh mengubah suai kod di atas kepada: $._data()
$("#myButton").on("click", function() { alert("Clicked!"); }); var clickHandler = $._data($("#myButton")[0], "events").click[0].handler;
melalui kaedah $._data()
, iaitu fungsi tanpa nama yang ditakrifkan di atas. click
adalah kaedah dalaman dan tidak boleh digunakan dalam projek formal. Jika anda perlu mendapatkan data pengikatan elemen, anda boleh menggunakan kaedah $._data()
yang lebih standard. data()
$("#myButton").on("click", function(event) { var clickHandler = event.handleObj.handler; });
untuk menyahikat acara elemen. Apabila kita perlu mendapatkan fungsi pengendalian peristiwa terikat, kita boleh menyimpan fungsi itu kepada pembolehubah sebelum menyahikat acara. Contohnya: unbind()
var clickHandler; $("#myButton").on("click", clickHandler = function() { alert("Clicked!"); }); $("#myButton").unbind("click", clickHandler);
untuk menyahikat acara dan mendapatkan pengendali acara terikat sebelum menyahikat. Perlu diingatkan bahawa kaedah ini hanya terpakai pada satu fungsi pengendalian acara. unbind()
yang lebih standard untuk mendapatkan data pengikatan elemen. Apabila anda perlu menyahikat acara, anda boleh menggunakan kaedah unbind() untuk mendapatkan pengendali acara terikat. data()
Atas ialah kandungan terperinci jquery mendapat kaedah mengikat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!