Preventing Bubble and Capture : Event Handler « Event « JavaScript Tutorial






<html> 

<head> 
<title>W3C DOM Event Propagation</title> 
<script type="text/javascript"> 
function init() { 
    document.body.onclick = docBodEvent; 
    document.addEventListener("click", docEvent, true); 
    document.forms[0].addEventListener("click", formCaptureEvent, true); 
    document.forms[0].addEventListener("click", formBubbleEvent, false); 
} 
function docBodEvent(evt) { 
    if (evt.target.type == "button") { 
       alert("BODY"); 
    } 
} 
function formCaptureEvent(evt) { 
    if (evt.target.type == "button") { 
        alert("This alert triggered by FORM only on CAPTURE."); 
        if (document.forms[0].stopAllProp.checked) { 
            evt.stopPropagation(); 
        } 
    } 
} 
function formBubbleEvent(evt) { 
    if (evt.target.type == "button") { 
        alert("This alert triggered by FORM only on BUBBLE."); 
        if (document.forms[0].stopDuringBubble.checked) { 
            evt.preventBubble(); 
        } 
    } 
} 
</script> 
</head> 
<body onload="init()"> 
<form> 
<input type="checkbox" name="stopAllProp" />Stop all propagation at FORM
<input type="checkbox" name="stopDuringBubble" />Prevent bubbling past FORM 
<input type="button" value="Button 'main1'" name="main1" onclick="alert('button')" /> 
</form> 
</body> 
</html>








15.12.Event Handler
15.12.1.Add event handler listener to document
15.12.2.Preventing Bubble and Capture
15.12.3.Register mouse down event(IE)
15.12.4.Event Handlers and this
15.12.5.Event Bubbling (Firefox)
15.12.6.Capturing events
15.12.7.Add event listener to form
15.12.8.Add event listener to elements in a form
15.12.9.Bubble up events (Firefox)
15.12.10.Inline DOM Event Registration