Soalan:
Bagaimana saya boleh melaksanakan fungsi yang berbeza apabila elemen diklik, berselang-seli antara mereka dengan setiap klik berturut-turut?
Jawapan:
jQuery menawarkan versi ganti kaedah .toggle() yang direka khusus untuk tujuan ini, walaupun sejak itu telah ditamatkan. Terdapat pendekatan alternatif, seperti mencipta pemalam tersuai yang menyediakan kefungsian yang diingini.
Menggunakan Kaedah .toggle() Dihentikan:
$('#element').toggle(function() { // Function 1 }, function() { // Function 2 });
Pemalam Tersuai:
(function($) { $.fn.clickToggle = function(func1, func2) { var funcs = [func1, func2]; this.data('toggleclicked', 0); this.click(function() { var data = $(this).data(); var tc = data.toggleclicked; $.proxy(funcs[tc], this)(); data.toggleclicked = (tc + 1) % 2; }); return this; }; }(jQuery)); $('#element').clickToggle(function() { // Function 1 }, function() { // Function 2 });
Nota:
Atas ialah kandungan terperinci Bagaimana untuk Panggilan Fungsi Ganti pada Acara Klik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!