Rumah hujung hadapan web tutorial js Pemahaman mendalam tentang kemahiran JS event binding_javascript

Pemahaman mendalam tentang kemahiran JS event binding_javascript

May 16, 2016 pm 04:43 PM
mengikat acara

1. Model acara tradisional

Terdapat batasan dalam model acara tradisional.

Model sebaris digunakan dalam bentuk atribut tag HTML dan dicampur dengan HTML Kaedah ini sudah pasti menyebabkan masalah pengubahsuaian dan pengembangan, dan jarang digunakan lagi.

Model skrip adalah untuk menulis fungsi pemprosesan acara ke dalam fail js, mendapatkan elemen daripada halaman dan mengikat fungsi acara yang sepadan untuk mencetuskan pelaksanaan. Tetapi terdapat juga kekurangan:

1. Sesuatu acara terikat kepada berbilang fungsi mendengar acara, dan yang terakhir akan menggantikan yang pertama.

2. Situasi di mana pengikatan berulang perlu dihadkan

3. Objek acara piawai

2. Pengikat acara moden

Peristiwa peringkat DOM2 mentakrifkan dua kaedah untuk menambah dan memadamkan acara: addEventListener() dan removeEventListener() Mereka masing-masing menerima tiga parameter: nama acara, fungsi, menggelegak atau menangkap nilai Boolean (benar bermakna menangkap, palsu bermakna mempertaruhkan Bubble).

Sejajar dengan itu, IE menyediakan dua kaedah yang serupa, attachEvent() dan detachEvent(), tetapi dua kaedah IE mempunyai masalah lain: objek ini tidak boleh dilalui (ini dalam IE menunjuk ke tetingkap Anda boleh menggunakan kaedah panggilan penyamaran objek:

function addEvent(obj,type,fn){ 
if(typeof obj.addEventListener != 'undefined'){ 
obj.addEventListener(type,fn,false); 
}else if(obj.attachEvent != 'undefined'){ 
obj.attachEvent('on' + type,function(){ 
fn.call(obj,window.event); 
}); 
} 
};
Salin selepas log masuk

Walau bagaimanapun, oleh kerana fungsi tanpa nama dilaksanakan semasa menambah, ia tidak boleh dipadamkan selepas menambah, selain itu, kaedah yang disediakan oleh IE juga akan menyebabkan masalah tidak dapat melaksanakan acara mengikat secara berurutan dan menyebabkan kebocoran memori.

Untuk menyelesaikan siri masalah ini, perlu merangkumkan lagi kaedah Untuk pelayar lain, gunakan standard tahap DOM2 Untuk IE, gunakan penambahan dan pemadaman berdasarkan mod tradisional >

1. Menambah menggunakan jadual cincang JS untuk menyimpan peristiwa objek, dan memberikan nilai ID kepada setiap peristiwa objek Menurut susunan panggilan yang ditambahkan, mula-mula tentukan sama ada fungsi pemprosesan yang sama wujud . Fungsi ditambahkan pada jadual cincang, yang menyelesaikan masalah tidak dapat dilaksanakan secara berurutan dan ditambah berulang kali

2. Apabila memadam, padanan fungsi traversal dinilai, dan jika wujud, padamkannya

Ringkasan:

Saya tidak mempunyai pemahaman mendalam tentang pengikatan acara JS sebelum ini, malah saya menggunakan model pengikatan acara tradisional, dan pemahaman saya tentang pelaksanaan program masih terlalu cetek perpustakaan. Walaupun perpustakaan js yang serupa dengan JQuery telah mencapai kesan pengkapsulan yang baik dari mekanisme pengikatan data, tetapi anda hanya mengetahuinya dan tidak tahu mengapa, anda masih berasa seperti anda berada dalam kegelapan. anda akan mempunyai perasaan pencerahan secara tiba-tiba, dan anda juga akan menyedari bahawa untuk membuat program yang serasi dan serba boleh, anda perlu mempertimbangkan banyak kandungan dan menyelesaikan banyak masalah, dan anda secara beransur-ansur menjadi lebih jelas tentang masalah ini.

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

jquery绑定事件有几种方式? jquery绑定事件有几种方式? Nov 09, 2020 pm 03:30 PM

jquery绑定事件有4种方式,分别为:bind()、live()、delegate()和on()方法;其中bind()方法只能针对已经存在的元素进行事件的绑定,而live()、on()、delegate()均支持未来新添加元素的事件绑定。

Selesaikan masalah ralat UniApp: acara 'xxx' tidak terikat Selesaikan masalah ralat UniApp: acara 'xxx' tidak terikat Nov 25, 2023 am 10:56 AM

Apabila membangunkan aplikasi menggunakan UniApp, anda mungkin menghadapi mesej ralat berikut: acara 'xxx' tidak terikat. Ini disebabkan oleh mekanisme mengikat acara UniApp, yang perlu ditetapkan dengan betul untuk menyelesaikan masalah ini. 1. Punca masalah Dalam UniApp, pengikatan peristiwa komponen halaman diselesaikan melalui arahan v-on. Contohnya, tambahkan komponen butang pada templat: <button@click="onClick">Click Me</butto

Bagaimana untuk menambah acara pada elemen? Tiga cara untuk menghuraikan peristiwa mengikat JS Bagaimana untuk menambah acara pada elemen? Tiga cara untuk menghuraikan peristiwa mengikat JS Aug 04, 2022 pm 07:27 PM

Sebagai bahasa skrip, JavaScript boleh mengikat acara pada elemen pada halaman, supaya apabila peristiwa tertentu berlaku, pengendali acara yang sepadan boleh dipanggil secara automatik untuk mengendalikan acara tersebut. Jadi bagaimana untuk menambah acara pada elemen? Artikel berikut akan memperkenalkan kepada anda tiga cara untuk mengikat acara dalam JS Saya harap ia akan membantu anda!

Apakah fungsi acara mengikat jquery Apakah fungsi acara mengikat jquery Mar 20, 2023 am 10:52 AM

Fungsi peristiwa mengikat jquery: Mengikat peristiwa biasa ke nod DOM Apabila nod DOM dipilih, mengikat peristiwa itu untuk memudahkan pengguna menyediakan operasi yang sepadan. jQuery menyediakan empat kaedah mengikat peristiwa, iaitu mengikat, hidup, mewakilkan dan hidup, dan fungsi nyah dengar yang sepadan ialah nyahikat, mati, nyahdelegasikan dan dimatikan.

Perbincangan mendalam tentang teknologi mengikat acara jQuery Perbincangan mendalam tentang teknologi mengikat acara jQuery Feb 26, 2024 pm 07:36 PM

jQuery ialah perpustakaan JavaScript popular yang digunakan secara meluas untuk mengendalikan interaktiviti dalam halaman web. Antaranya, pengikatan peristiwa adalah salah satu fungsi penting jQuery Melalui pengikatan peristiwa, respons kepada interaksi pengguna boleh dicapai. Artikel ini akan meneroka teknologi mengikat acara jQuery dan memberikan contoh kod khusus. 1. Konsep asas pengikatan peristiwa Pengikatan peristiwa merujuk kepada menambahkan pendengar peristiwa pada elemen DOM untuk melaksanakan operasi tertentu apabila peristiwa tertentu berlaku. Dalam jQuery, pilih yang dikehendaki

Apakah yang perlu saya lakukan jika pengikatan acara 'klik' tidak sah dalam aplikasi Vue saya? Apakah yang perlu saya lakukan jika pengikatan acara 'klik' tidak sah dalam aplikasi Vue saya? Jun 24, 2023 pm 03:51 PM

Vue ialah rangka kerja JavaScript yang popular untuk membina aplikasi web moden. Dalam Vue, kami biasanya menggunakan arahan untuk mengendalikan elemen DOM. Antaranya, acara "klik" adalah salah satu arahan yang biasa digunakan Walau bagaimanapun, dalam aplikasi Vue, kami sering menghadapi situasi di mana pengikatan acara "klik" tidak sah. Artikel ini menerangkan cara menyelesaikan masalah ini. Langkah pertama dalam menyemak sama ada unsur wujud adalah untuk mengesahkan sama ada unsur yang anda ingin ikat acara "klik" wujud. Jika unsur itu tidak wujud,

Cara menggunakan parameter fungsi mengikat peristiwa dalam dokumentasi Vue Cara menggunakan parameter fungsi mengikat peristiwa dalam dokumentasi Vue Jun 20, 2023 pm 02:06 PM

Vue ialah rangka kerja JavaScript popular yang menggunakan idea terdorong data untuk memudahkan proses pembangunan. Fungsi mengikat acara Vue sangat berkuasa dan boleh mengendalikan pelbagai interaksi pada halaman. Dalam proses pembangunan Vue, parameter fungsi mengikat peristiwa sering digunakan Artikel ini akan memperkenalkan penggunaan fungsi ini secara terperinci. Dalam Vue, anda boleh menggunakan arahan v-on untuk mengikat acara. Arahan v-on diikuti oleh nama acara dan fungsi pengendalian acara, contohnya: <bu

Analisis mendalam tentang teknik mengikat acara jQuery Analisis mendalam tentang teknik mengikat acara jQuery Feb 26, 2024 pm 06:33 PM

jQuery ialah perpustakaan JavaScript popular yang memudahkan banyak tugas biasa dalam pembangunan web, termasuk pemilihan elemen, manipulasi DOM dan pengendalian acara. Dalam jQuery, pengikatan peristiwa adalah salah satu operasi yang sangat biasa dan penting. Artikel ini akan meneroka kaedah mengikat acara dalam jQuery secara terperinci dan menggunakan contoh kod khusus untuk membantu pembaca memahami dan menggunakan kaedah ini dengan lebih baik. Kaedah 1.bind() Kaedah bind() ialah salah satu kaedah mengikat peristiwa yang paling tradisional dan biasa digunakan. ia boleh

See all articles