电商网站功能列表,p2p万能搜索引擎,哪些网站做的好处,网站音乐播放代码阻止冒泡#xff1a; 冒泡简单的举例来说#xff0c;儿子知道了一个秘密消息#xff0c;它告诉了爸爸#xff0c;爸爸知道了又告诉了爷爷#xff0c;一级级传递从而以引起事件的混乱#xff0c;而阻止冒泡就是不让儿子告诉爸爸#xff0c;爸爸自然不会告诉爷爷。下面的d…阻止冒泡 冒泡简单的举例来说儿子知道了一个秘密消息它告诉了爸爸爸爸知道了又告诉了爷爷一级级传递从而以引起事件的混乱而阻止冒泡就是不让儿子告诉爸爸爸爸自然不会告诉爷爷。下面的demo 就是很好的例子!DOCTYPE html
html head meta charsetUTF-8 title/title style typetext/css #box { width: 300px; height: 300px; background: red; display: none; } /style script typetext/javascript window.onload function() { var btn document.getElementById(btn); var box document.getElementById(box); btn.onclick function(ev) { var oEvent ev || event; box.style.display block; //oEvent.cancelBubble true;//高版本浏览器 stopBubble(oEvent); //在低版本的chrome和firefox浏览器中需要兼容性处理 //高版本chrome和firefox浏览器直接使用上面这行代码即可 } document.onclick function() { box.style.display none; } } //阻止冒泡事件的兼容性处理 function stopBubble(e) { if(e e.stopPropagation) { //非IE e.stopPropagation(); } else { //IE window.event.cancelBubble true; } } /script /head body input typebutton idbtn value语言 / div idbox/div /body /htmlx48 1!DOCTYPE html 2html 3 4 head 5 meta charsetUTF-8 6 title/title 7 style typetext/css 8 #box { 9 width: 300px; 10 height: 300px; 11 background: red; 12 display: none; 13 } 14 /style 15 script typetext/javascript 16 window.onload function() { 17 var btn document.getElementById(btn); 18 var box document.getElementById(box); 19 btn.onclick function(ev) { 20 var oEvent ev || event; 21 box.style.display block; 22 //oEvent.cancelBubble true;//高版本浏览器 23 stopBubble(oEvent); 24 //在低版本的chrome和firefox浏览器中需要兼容性处理 25 //高版本chrome和firefox浏览器直接使用上面这行代码即可 26 } 27 document.onclick function() { 28 box.style.display none; 29 } 30 31 } 32 //阻止冒泡事件的兼容性处理 33 function stopBubble(e) { 34 if(e e.stopPropagation) { //非IE 35 e.stopPropagation(); 36 } else { //IE 37 window.event.cancelBubble true; 38 } 39 } 40 /script 41 /head 42 43 body 44 input typebutton idbtn value语言 / 45 div idbox/div 46 /body 47 48/html我所实现的效果是点击按钮btn让box显示而点击其他地方则让box消失。如果我不阻止冒泡的话那么首先btn会触发点击时间让盒子显示但是由于box是包含在document中的所以会向上冒泡又触发document的点击事件盒子又消失。这个事件的执行顺序可以在不同的点击事件中使用alert来验证。关于cancelBubble的兼容性处理在高版本的chrome和firefox中已经不需要兼容处理了直接使用oEvent.cancelBubble true 即可。下面的阻止浏览器事件的兼容性处理在高版本浏览器中同样不需要。默认事件。即浏览器本身具备的功能。function preventDefa(e){ if(window.event){ //IE中阻止函数器默认动作的方式 window.event.returnValue false; } else{ //阻止默认浏览器动作(W3C) e.preventDefault(); }
} 1101function preventDefa(e){ 2 if(window.event){ 3 //IE中阻止函数器默认动作的方式 4 window.event.returnValue false; 5 } 6 else{ 7 //阻止默认浏览器动作(W3C) 8 e.preventDefault(); 9 } 10} 这种是兼容性写法但是如果你只需要支持高版本浏览器的话那么如上文一样一句话即可。btn.onclick function (){ return false;
}11btn.onclick function (){ 2 return false; 3}来自为知笔记(Wiz)转载于:https://www.cnblogs.com/zjx2011/p/8447510.html