javascript 阻挠冒泡和浏览器的默许行为牛牛娱乐 - 牛牛娱乐

javascript 阻挠冒泡和浏览器的默许行为牛牛娱乐

2019年02月16日11时35分00秒 | 作者: 秋灵 | 标签: 浏览器,事情,下拉菜单 | 浏览: 15025

在运用javascript编程时会遇到一个问题,就是当你给html增加事情时,因为浏览器默许的为冒泡型事情触发机制,所以会触发你不想触发的事情.那么经过如下的函数能够处理这个问题。

 

1.阻挠事情冒泡

function stopBubble(e) {
//假如供给了事情目标,则这是一个非IE浏览器
if ( e e.stopPropagation )
 //因而它支撑W3C的stopPropagation()办法
 e.stopPropagation();
 //不然,咱们需求运用IE的方法来撤销事情冒泡
 window.event.cancelBubble = true;
}

 

2.当按键后或许点击一个链接后,不期望按键或许链接履行时,能够撤销返回值.即中止默许事情默许行为

//阻挠浏览器的默许行为
function stopDefault( e ) {
 //阻挠默许浏览器动作(W3C)
 if ( e e.preventDefault )
 e.preventDefault();
 //IE中阻挠函数器默许动作的方法
 else
 window.event.returnValue = false;
 return false;
}

 

 示例 : 点击页面的任何URL链接 不跳转。

 

var links=document.getElementsByTagName(a);
 for(var i=0;i links.length;i++){
 links[i].onlick=function(e){
 alert(我不跳转,点我也没用);
 stopDefault(e)
 }}

 

另一个阻挠冒泡常见的使用就是下拉菜单的作用,点击按钮,下拉菜单显现,在点击页面任何其它部分,下拉菜单躲藏。

 

 //给document增加点击事情,点击时封闭菜单,默许情况下,点击任何元素,都会冒泡的到document
document.onclick=function(){
b.style.display="none";
//为点击元素显现下拉菜单的元素阻挠冒泡,这样document的click事情就被阻挠履行
 function showMenu(e) {
var e=window.event || e;
下拉菜单.style.display="block";
if(e.stopPropagation){
e.stopPropagation()
else{
 e.cancelBubble=true;
 点击按钮.onclick=下拉菜单. howMenu;

 

  

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表牛牛娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章