Rumah hujung hadapan web tutorial js Penyelesaian untuk mencetuskan klik peristiwa dua kali dalam kemahiran iScroll_javascript

Penyelesaian untuk mencetuskan klik peristiwa dua kali dalam kemahiran iScroll_javascript

May 16, 2016 pm 04:10 PM
klik

Saya telah membaca banyak artikel rakan membincangkan isu ini sebelum ini. Sebagai contoh, gunakan pembolehubah untuk merekodkan selang pelaksanaan atau sesuatu. Rasa macam kena melancap setiap kali memang agak memenatkan. Saya suka memilih alatan sebelum mengalihkan batu bata. Malah, penyelesaian kepada masalah ini sangat mudah. iScroll sebenarnya memintas peristiwa mula sentuh dan akhir sentuh apabila penyemak imbas diklik. Gunakan js untuk mencetuskan acara onclick elemen (fungsi _end) apabila menyentuh hujung. Dalam operasi sebenar, touchend dilaksanakan dahulu, dan kemudian fungsi berkaitan onclick dilaksanakan. Ini menimbulkan sakit kepala satu klik dan dua pencetus. Ini bukan masalah pada mulanya. Sebab mengapa ini menjadi masalah ialah kita perlu melihat kod sumber iScroll. Cara untuk menyelesaikan masalah ini adalah dengan menolak untuk melaksanakan fungsi untuk kali kedua. Dan logik saya betul-betul sama. Kita boleh mengalih keluar fungsi yang terikat pada acara onclick selepas melaksanakan kod yang mencetuskan acara klik dalam fungsi _end. Kemudian tambahkan acara itu semula selepas beberapa ratus milisaat masa. Contohnya:

Salin kod Kod adalah seperti berikut:

//Sebelum memproses
Double-click test
//Selepas memproses
Ujian klik dua kali

Selepas mengalih keluar fungsi berkaitan onclick, fungsi ujian secara semula jadi tidak akan dicetuskan untuk kali kedua. Untuk terus menggunakannya pada masa akan datang, kami boleh menggunakan setTimeout untuk memulihkan kandungan onclick.

Kod sumber iskrol yang diubah suai (kira-kira 550 hingga 570 baris, dalam fungsi _end):

Salin kod Kod adalah seperti berikut:

that.doubleTapTimer = setTimeout(fungsi () {
                            that.doubleTapTimer = null;
                            // Cari elemen yang terakhir disentuh
                            sasaran = titik.sasaran;
                            manakala (target.nodeType != 1) target = target.parentNode;
                            jika (target.tagName != 'SELECT' && target.tagName != 'INPUT' && target.tagName != 'TEXTAREA') {
                                ev = doc.createEvent('MouseEvents');
                                ev.initMouseEvent('klik', benar, benar, e.view, 1,
                                    point.screenX, point.screenY, point.clientX, point.clientY,
                                    e.ctrlKey, e.altKey, e.shiftKey, e.metaKey,
                                    0, batal);
                                ev._palsu = benar;
                                target.dispatchEvent(ev);
                                /**Kod berikut ialah kod baharu**/
                                //找到绑定klik事件的元素。
                                var obj = $(target).attr("onclick") != null ? $(sasaran): $(sasaran). ibu bapa("[onklik]")[0];
                                jika (obj != null) {
                                    var clickContent = $(obj).attr("onclick");
                                    if (clickContent != "void(0)") {
                                        //利用新的属性来存储原有的click函数
                                        $(obj).attr("data-clickbak", $(obj).attr("onclick"));
//Tukar nilai atribut onclick.
$(obj).attr("onclick", "void(0)");
//Halang klik ganas
Jika (that.hashBox.length>0) {
untuk (var _i = 0; _i < that.hashBox.length; _i )
                                                                                                                                                                                                                            That.hashBox.splice(_i, 1);
rehat;
                                                                                                                                                                                                                                                That.hashBox.push($(obj));
That._clickBack();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    }                                                                                                                                                                                                                                                                                                                                                                                                                    //tamat
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

Fungsi _clickBack dan coretan kod hashBox (ditambah sebelum fungsi _end)

Salin kod Kod adalah seperti berikut:

        kotak cincang: [],
/*Pulihkan peristiwa objek yang diklik*/
​​​ _clickBack: fungsi () {
            var that = this;
              setTimeout(fungsi () {
Jika (that.hashBox.length > 0) {
                    var obj = that.hashBox.pop();
                                                                 obj.attr("onclick", obj.attr("data-clickbak"));
Jika (that.hashBox.length > 0) that._clickBack();
                }
             }, 500);
}

Sudah tentu, ia juga boleh dilaksanakan melalui fungsi awam tanpa mengubah suai kod sumber iscroll.

Di atas adalah semua kandungan artikel ini saya harap ia akan membantu semua orang untuk belajar menggunakan kawalan gelongsor iscroll

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

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Muzium Dua Point: Semua Pameran dan Di Mana Mencari Mereka
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

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)

Bagaimana untuk menetapkan berbilang pemasa pada iPhone iOS 17 Bagaimana untuk menetapkan berbilang pemasa pada iPhone iOS 17 Sep 18, 2023 am 09:01 AM

Dalam iOS 17, anda boleh menetapkan berbilang pemasa pada iPhone anda menggunakan apl Jam atau menggunakan Siri untuk menetapkannya bebas tangan. Kami membincangkan kedua-duanya dalam artikel ini. Mari kita lihat mereka. Tetapkan Berbilang Pemasa pada iPhone Menggunakan Apl Jam Buka apl Jam pada iPhone anda dan ketik tab Pemasa di penjuru kanan sebelah bawah. Sekarang, tetapkan jam, minit dan saat. Anda boleh menggunakan pilihan "Label" dan "Bilakah pemasa tamat" untuk menetapkan nama pemasa dan nada pilihan apabila pemasa selesai. Ini akan membantu anda membezakan antara pemasa. Setelah selesai, klik butang "Mula". Kemudian, klik pada ikon "+" di penjuru kanan sebelah atas. Sekarang, ulangi langkah di atas untuk menetapkan berbilang pemasa pada iPhone. Anda juga boleh menyemak imbas

Cara Membuat Senarai Beli-belah dalam Apl Peringatan iOS 17 pada iPhone Cara Membuat Senarai Beli-belah dalam Apl Peringatan iOS 17 pada iPhone Sep 21, 2023 pm 06:41 PM

Cara Membuat Senarai Runcit pada iPhone dalam iOS17 Mencipta Senarai Runcit dalam apl Peringatan adalah sangat mudah. Anda hanya menambah senarai dan mengisinya dengan item anda. Apl ini secara automatik mengisih item anda ke dalam kategori, dan anda juga boleh bekerjasama dengan pasangan anda atau rakan kongsi rata untuk membuat senarai barang yang anda perlu beli dari kedai. Berikut ialah langkah penuh untuk melakukan ini: Langkah 1: Hidupkan Peringatan iCloud Walaupun kedengaran pelik, Apple berkata anda perlu mendayakan peringatan daripada iCloud untuk mencipta Senarai Runcit pada iOS17. Berikut ialah langkah untuknya: Pergi ke apl Tetapan pada iPhone anda dan ketik [nama anda]. Seterusnya, pilih i

Cara menyediakan kad perniagaan saya dalam Kenalan pada iPhone [2023] Cara menyediakan kad perniagaan saya dalam Kenalan pada iPhone [2023] Sep 22, 2023 pm 09:17 PM

Dengan Kad Perniagaan Saya dalam iOS, anda boleh membuat kad kenalan diperibadikan yang Siri dan perkhidmatan lain mengenali dan mengaitkan dengan anda dan nombor telefon anda. Dengan pengenalan poster kenalan dalam iOS17, Kad Saya menjadi sangat penting kerana ia kini digunakan untuk membuat poster kenalan anda. Jika anda tidak sabar-sabar untuk menyediakan dan menyiarkan poster kenalan anda, anda perlu bermula dengan menyediakan Kad Perniagaan Saya. Kami akan membincangkan cara membuat Kad Perniagaan Saya dan cara menjadikannya berfungsi dengan lancar dengan Siri dan poster kenalan anda. Cara Menyediakan Kad Perniagaan Saya dalam Kenalan pada iPhone [2023] Jika anda menyediakan Kad Perniagaan Saya pada iPhone anda buat kali pertama, anda mesti melakukannya melalui aplikasi Kenalan sahaja

Bagaimana untuk menukar foto kenalan pada iPhone Bagaimana untuk menukar foto kenalan pada iPhone Jun 08, 2023 pm 03:44 PM

iOS17 akhirnya di sini, dan ia termasuk banyak ciri baharu. Mari belajar cara menukar foto kenalan pada iPhone dalam tutorial hari ini. Acara WWDC 2023 Apple baru-baru ini memperkenalkan pelbagai produk menarik dan kemas kini perisian yang akan datang. Salah satu ciri ketara iOS 17 ialah pilihan untuk menyesuaikan foto dan poster kenalan anda, menyediakan cara unik untuk menyambut orang lain apabila mereka menerima panggilan daripada anda pada iPhone mereka. Ciri inovatif untuk iOS ini direka untuk menjadikan panggilan telefon lebih peribadi dan mesra pengguna, membolehkan anda memilih cara panggilan itu muncul pada skrin penerima. Jika anda tidak sabar-sabar untuk mendapatkan ciri baharu ini dan menyapa orang yang anda sayangi dengan cara yang diperibadikan semasa membuat panggilan, berikut ialah cara untuk menambahkan ciri tersebut pada iPhone anda

Cara mematikan penggera pada iPhone [2023] Cara mematikan penggera pada iPhone [2023] Aug 21, 2023 pm 01:25 PM

Sejak kemunculan telefon pintar, mereka sudah pasti telah menggantikan jam penggera. Jika anda memiliki iPhone, anda boleh menggunakan apl Jam untuk menetapkan seberapa banyak penggera dengan mudah untuk beberapa kali sepanjang hari. Apl ini membolehkan anda mengkonfigurasi masa penggera, nada, kekerapan ia berulang dan sama ada anda mahu menangguhkannya menggunakan pilihan Tunda. Jika anda ingin mematikan penggera yang telah anda tetapkan, siaran berikut akan membantu anda melumpuhkan dan memadamkan penggera biasa dan penggera bangun pada iPhone anda. Cara Mematikan Penggera Biasa pada iPhone Secara lalai, apabila anda menambah penggera pada apl Jam atau meminta Siri menambah penggera untuk anda, anda sebenarnya mencipta penggera biasa. Anda boleh mencipta seberapa banyak jam penggera pada iPhone anda sesuka hati dan meletakkannya

Kuasai seni menggunakan Panduan Peta Apple pada iPhone dan iPad Kuasai seni menggunakan Panduan Peta Apple pada iPhone dan iPad Aug 30, 2023 am 09:25 AM

Dalam dunia teknologi yang sentiasa berkembang, keupayaan untuk menavigasi peta digital telah menjadi kemahiran penting. Artikel ini menyediakan panduan komprehensif tentang cara menggunakan Panduan Peta Apple pada iPhone dan iPad, ciri yang merevolusikan cara pengguna meneroka persekitaran mereka dan merancang perjalanan mereka. Peta Apple ialah aplikasi terbina dalam pada semua peranti Apple, dan ia sentiasa dikemas kini dan dipertingkatkan untuk memberikan pengalaman navigasi yang lancar. Salah satu ciri yang paling ketara ialah ciri Panduan, yang menyediakan senarai susun tempat menarik untuk dilawati di pelbagai bandar di seluruh dunia. Ciri ini bukan sahaja bermanfaat untuk pengembara, tetapi juga rahmat untuk penduduk tempatan yang ingin menemui tarikan baharu di bandar mereka. Cara menggunakan Peta Apple pada panduan iOS Mula-mula, lawati Peta Apple

Bagaimana untuk melaksanakan fungsi klik-untuk-zum masuk dan zum keluar imej melalui Vue? Bagaimana untuk melaksanakan fungsi klik-untuk-zum masuk dan zum keluar imej melalui Vue? Aug 18, 2023 pm 08:43 PM

Bagaimana untuk melaksanakan fungsi klik-untuk-zum masuk dan zum keluar imej melalui Vue? Dalam pembangunan web moden, mengklik untuk mengezum masuk dan keluar imej adalah keperluan biasa. Sebagai rangka kerja bahagian hadapan yang popular, Vue menyediakan fungsi yang kaya dan sintaks ringkas, yang boleh melaksanakan fungsi ini dengan mudah. Artikel ini akan memperkenalkan cara melaksanakan fungsi klik untuk zum masuk dan zum keluar imej melalui Vue dan memberikan contoh kod. Pertama, kita memerlukan komponen yang mengandungi berbilang imej. Anda boleh menggunakan arahan v-for Vue untuk memaparkan senarai imej secara dinamik. Yang berikut adalah mudah

Cara membetulkan telefon Android anda apabila ia tidak dapat disambungkan ke rangkaian wayarles Cara membetulkan telefon Android anda apabila ia tidak dapat disambungkan ke rangkaian wayarles Aug 14, 2023 pm 08:53 PM

Pemeriksaan Awal Sebelum menyelidiki lebih banyak penyelesaian teknikal, anda perlu melakukan beberapa pemeriksaan awal pada telefon Android anda: Semak sambungan WiFi anda: Pastikan peranti lain boleh menyambung ke rangkaian WiFi. Jika mereka tidak boleh, masalahnya mungkin dengan penghala atau pembekal perkhidmatan Internet anda. Mulakan semula peranti anda: Kadangkala, mulakan semula mudah boleh menyelesaikan banyak isu berkaitan teknologi. Matikan telefon anda, tunggu beberapa saat, kemudian hidupkannya semula. Lupakan dan sambung semula ke rangkaian: Pergi ke tetapan WiFi anda, pilih rangkaian yang berkenaan dan pilih "Lupa." Kemudian, sambung semula dengan memasukkan kata laluan anda sekali lagi. Jika langkah ini tidak berkesan, sudah tiba masanya untuk menggali lebih dalam. Penyelesaian Masalah Lanjutan 1. Semak Kemas Kini Sistem Perisian lapuk sering menyebabkan

See all articles