這篇文章主要介紹了zepto.js中tap事件阻止冒泡的實現方法,實例分析了由冒泡產生的click延遲解決方法,需要的朋友可以參考下
本文實例講述了zepto.js中tap事件阻止冒泡的實現方法。分享給大家供大家參考。具體如下:
最近在弄一個手機版的網站,本來想用jQuery Mobile,但文件太大了,所以用了zepto.js
由於移動網頁中使用click事件會有延遲,所以就用上了zepto.js中的tap事件。
使用click事件可以使用stopPropagation來阻止冒泡,但tap使用該方法無效
現在我需要實現這樣一個效果:點擊a.btn這個按鈕,然後顯示div.panel,當我點擊非div.panel時隱藏div.panel
? 1 2 3 4 5 6 7 $("a.btn").on("tap",function(e){ e.stopPropagation();//該方法不起作用 $("div.panel").show(); }); $(document).on("tap",function(e){ $("div.panel").hide(); });通過調試工具,得到e這個對象中有一個target屬性,於是可以通過該屬性來實現所需要的效果:
? 1 2 3 4 5 6 7 8 $("a.btn").on("tap",function(){ $("div.panel").show(); }); $(document).on("tap",function(e){ if(!$(e.target).hasClass("btn")){ $("div.panel").hide(); } });這樣算是解決了
希望本文所述對大家的javascript程序設計有所幫助。