并非所有的事件都会经过冒泡阶段的
并非所有的事件都会经过冒泡阶段的
所有的事件都要经过捕捉阶段和目标阶段,但是有些事件会跳过冒泡阶段。例如,让元素获得输入焦点的focus事件以及失去输入焦点的blur事件就都不会冒泡。(不会向外传递事件。但是仍然会捕获)
focus_Bubble:
<!DOCTYPE html> <html> <head> <style> #a { width: 500px; height: 500px; background: #ff0000 } #b { width: 200px; height: 200px; background: #00ff00 } </style> </head> <body> <div id="a"> <input id="b" type="text" name="bbbbb"> </div> <hr> <input type="text" name="ccc"> </body> <script> //函数 var fa = function () { alert("a"); } var fb = function (event) { alert("b"); } //A var A = document.getElementById("a"); A.addEventListener("focus", fa, false); //B var B = document.getElementById("b"); B.addEventListener("focus", fb, false); </script> </html>
blur_Bubble
<!DOCTYPE html> <html> <head> <style> #a { width: 500px; height: 500px; background: #ff0000 } #b { width: 200px; height: 200px; background: #00ff00 } </style> </head> <body> <div id="a"> <input id="b" type="text" name="bbbbb"> </div> <hr> <input type="text" name="ccc"> </body> <script> //函数 var fa = function () { alert("a"); } var fb = function (event) { alert("b"); } //A var A = document.getElementById("a"); A.addEventListener("blur", fa, false); //B var B = document.getElementById("b"); B.addEventListener("blur", fb, false); </script> </html>
focus_Catch
<!DOCTYPE html> <html> <head> <style> #a { width: 500px; height: 500px; background: #ff0000 } #b { width: 200px; height: 200px; background: #00ff00 } </style> </head> <body> <div id="a"> <input id="b" type="text" name="bbbbb"> </div> <hr> <input type="text" name="ccc"> </body> <script> //函数 var fa = function () { alert("a"); } var fb = function (event) { alert("b"); } //A var A = document.getElementById("a"); A.addEventListener("focus", fa, true); //B var B = document.getElementById("b"); B.addEventListener("focus", fb, true); </script> </html>
blur_Catch
<!DOCTYPE html> <html> <head> <style> #a { width: 500px; height: 500px; background: #ff0000 } #b { width: 200px; height: 200px; background: #00ff00 } </style> </head> <body> <div id="a"> <input id="b" type="text" name="bbbbb"> </div> <hr> <input type="text" name="ccc"> </body> <script> //函数 var fa = function () { alert("a"); } var fb = function (event) { alert("b"); } //A var A = document.getElementById("a"); A.addEventListener("blur", fa, true); //B var B = document.getElementById("b"); B.addEventListener("blur", fb, true); </script> </html>

 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号