天天看點

js停止冒泡和阻止浏覽器預設行為

停止冒泡通用方法:

function stopBubble(e) { 
//如果提供了事件對象,是非IE浏覽器 
if ( e && e.stopPropagation ) 
    //使用W3C的stopPropagation()方法 
    e.stopPropagation(); 
else 
    //使用IE的cancelBubble = true來取消事件冒泡 
    window.event.cancelBubble = true; 
}      

阻止浏覽器預設行為-通用方法

//阻止浏覽器的預設行為 
function stopDefault( e ) { 
    //阻止預設浏覽器動作(W3C) 
    if ( e && e.preventDefault ) 
        e.preventDefault(); 
    //IE中阻止函數器預設動作的方式 
    else 
        window.event.returnValue = false; 
    return false; 
}      

事件相容

function myfn(e){ var evt = e ? e:window.event; }      
window.event? window.event.cancelBubble = true : evt.stopPropagation();      
window.event? window.event.returnValue = false : evt.preventDefault();