Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Apakah kaedah delegasi acara jquery?
kaedah delegasi acara jquery termasuk: 1. kaedah blind(), terutamanya digunakan untuk mengikat acara kepada elemen terpilih; 2. kaedah live(), tambah satu atau lebih pada pengendali acara elemen padanan semasa atau masa hadapan 3 . kaedah delegate(); 4. on() kaedah, digunakan untuk mengikat acara mendengar kepada elemen induk terdekat.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi jquery 1.10.2, komputer Dell G3.
Apakah itu delegasi acara?
Acara elemen anak diwakilkan kepada elemen induk, bukannya menugaskannya kepada elemen anak untuk mengikat acara itu sendiri, dan kemudian cari acara.sasaran yang sepadan apabila acara itu dicetuskan
Ia merujuk kepada penggunaan acara menggelegak dan menyatakan hanya satu pengendali acara untuk mengurus semua acara jenis tertentu
Mengapa menggunakan perwakilan acara?
Oleh kerana bilangan pengendali acara yang ditambahkan pada halaman dalam js akan menjejaskan prestasi keseluruhan perjalanan halaman
Kedua, adalah terlalu menyusahkan untuk menambah pengendali acara satu oleh satu ke senarai , oleh itu, delegasi acara meningkatkan prestasi halaman yang sedang berjalan
Melintasi dan mengikat acara ke li di bawah ul melalui gelung for, yang nampaknya tiada masalah tetapi sebenarnya menjejaskan larian prestasi halaman
Pada masa ini, delegasi acara mod menggelegak digunakan untuk menyelesaikan masalah
Walau bagaimanapun, jika anda memikirkan tentang peristiwa yang terikat kepada ul, tidakkah setiap li akan terjejas selepas pelaksanaan?
Kes ini memperkenalkan konsep baharu: sumber acara: tidak kira elemen mana acara terikat, ia merujuk kepada sasaran yang sebenarnya mencetuskan acara
acara.sasaran
cth:ul.onclick=function(event){}
Maksud mudahnya ialah mengurangkan akses DOM, mengurangkan memori dan meningkatkan prestasi berjalan halaman
kaedah delegasi acara jquery Apakah definisi dan penggunaan
1. Buta
: terutamanya digunakan untuk mengikat acara pada elemen terpilih
Sintaks:
blind("事件类型",data,function(){ }); //data是传入函数的参数用event.data获取(平时用的.click()等都是其简化用法)
Ciri; sesuai untuk halaman statik, hanya boleh terikat pada elemen yang sudah wujud apabila ia dipanggil dan tidak boleh terikat pada elemen yang ditambahkan pada masa hadapan
Apabila halaman dimuatkan Buta akan dilakukan apabila selesai;
2 secara langsung (tidak disokong selepas 1.7)
Definisi: Tambahkan satu atau lebih pengendali acara pada. elemen padanan semasa atau masa hadapan Peranti;
Sintaks:
live("事件类型",data, 函数名);//data可选
Ciri: langsung tidak mengikat acara itu sendiri (ini), tetapi dengan ini.konteks
Ia ialah mekanisme delegasi acara yang digunakan untuk melengkapkan pemantauan dan pemprosesan acara, dan pemprosesan nod diwakilkan untuk mendokumenkan
Elemen yang baru ditambah tidak perlu terikat kepada pendengar lagi, dan berbilang acara boleh diproses
sahaja Letakkannya selepas elemen yang dipilih secara langsung
3 mewakilkan
takrifan: Ikat acara mendengar kepada elemen induk terdekat, kerana. acara boleh menggelembung dengan lebih pantas Naik
Sintaks:
delegate(selector,type,[data],fn)
Ciri: Penggunaan proksi acara yang lebih tepat dalam julat yang kecil, prestasi lebih baik daripada .live(). Boleh digunakan pada elemen yang ditambah secara dinamik.
("父级选择器").delegate(".a","click",function())//表示:.a的事件通过父级元素进行委托,(this)获取的是触发事件的子元素
4 pada
takrifan; 🎜>Ciri: Anda juga boleh menggunakan pemantauan acara untuk teg yang baru ditambah di bawah elemen induk
Ia juga menyokong pemprosesan acara berbilang masa
on(type, 选择器,方法)[Pembelajaran yang disyorkan:
tutorial video jQuery
,Video bahagian hadapan web
】Atas ialah kandungan terperinci Apakah kaedah delegasi acara jquery?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!