jQuery實現(xiàn)點擊某個div打開層,點擊其他div關(guān)閉層實例分析(阻止冒泡)
本文實例講述了jQuery實現(xiàn)點擊某個div打開層,點擊其他div關(guān)閉層的方法。分享給大家供大家參考,具體如下:
其實很早就學(xué)過js一些高級部分的知識,但是用的不多,也就慢慢淡忘了。最近發(fā)現(xiàn)隨著編程的深入,你不得不用到它們,比如事件的冒泡。
有一需求如下:
①點擊class = "click" 塊 彈出 class="pop" 塊
②點擊class = "page" 塊 關(guān)閉 class="pop" 塊
③點擊class = "pop" 塊 不關(guān)閉任何塊
如果用jQuery 魯莽一點,直接的程序就寫出來了
<script> $(function(){ $('.click').click(functon(){ $('.pop').show(); }); $('.page').click(function(){ $('.pop').hide(); }) }) </script>
你這么一鬧騰,問題就出來了,當(dāng)我點擊"click"塊的時候,妹的,我還沒看到彈出層 "pop",瞬間就關(guān)閉了,這是為什么呢?因為你點擊"click" 的瞬間,觸發(fā)了兩個事件,第一個是 自己本身的點擊事件,因為自己的父層也注冊了點擊事件,那第二個父層的點擊事件也被觸發(fā)了,即所謂的事件冒泡。
我又想保留這兩個事件,但又不想出現(xiàn)這樣的情況,怎么辦,這就是我要說的 阻止事件冒泡。
阻止事件冒泡大致有兩種辦法:
1)使用 return false;
2)使用 event.stopPropagation();
其實兩者的原理差不多,就是屏蔽要冒泡的對象
$(function(){ $('.click').click(functon(event){ $('.pop').show(); event.stopPropagation(); }); $('.page').click(function(){ $('.pop').hide(); }) })
或者:
$(function(){ $('.click').click(functon(){ $('.pop').show(); return false; }); $('.page').click(function(){ $('.pop').hide(); }) })
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery窗口操作技巧總結(jié)》、《jQuery拖拽特效與技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jquery中Ajax用法總結(jié)》、《jQuery表格(table)操作技巧匯總》、《jQuery擴展技巧總結(jié)》、《jQuery常見經(jīng)典特效匯總》、《jQuery動畫與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對大家jQuery程序設(shè)計有所幫助。
- jQuery控制DIV層實現(xiàn)由大到小,由遠及近動畫變化效果
- jQuery實現(xiàn)單擊彈出Div層窗口效果(可關(guān)閉可拖動)
- jQuery實現(xiàn)DIV層收縮展開的方法
- jQuery實現(xiàn)鼠標(biāo)滑過Div層背景變顏色的方法
- jQuery實現(xiàn)DIV層淡入淡出拖動特效的方法
- jquery鼠標(biāo)放上去顯示懸浮層即彈出定位的div層
- jQuery div層的放大與縮小簡單實現(xiàn)代碼
- 基于jquery的模態(tài)div層彈出效果
- jQuery中阻止冒泡事件的方法介紹
- js阻止冒泡及jquery阻止事件冒泡示例介紹
- jquery阻止冒泡事件使用模擬事件
- jQuery阻止冒泡和HTML默認操作
相關(guān)文章
JQuery實現(xiàn)的在新窗口打開鏈接的方法小結(jié)
jQuery 實現(xiàn)在新窗口中打開鏈接方法,收集了幾個,大家可以根據(jù)需要選擇使用。2010-04-04深入研究jQuery圖片懶加載 lazyload.js使用方法
這篇文章主要介紹了jQuery圖片懶加載 lazyload.js使用方法,通過設(shè)置臨界點,占位符,設(shè)置事件來觸發(fā)加載等等來講解lazyload.js的使用,具體操作步驟大家可查看下文的詳細講解,感興趣的小伙伴們可以參考一下。2017-08-08jQuery學(xué)習(xí)筆記之jQuery的DOM操作
jQuery學(xué)習(xí)筆記之jQuery的DOM操作實現(xiàn)方法, 學(xué)習(xí)jquery與dom操作的朋友可以參考下。2010-12-12