1. 程式人生 > >事件冒泡之cancelBubble和stoppropagation的區別

事件冒泡之cancelBubble和stoppropagation的區別

CA fun att 我們 屬於 value 而且 net IE

事實上stoppropagation和cancelBubble的作用是一樣的,都是用來阻止瀏覽器默認的事件冒泡行為。

不同之處在於stoppropagation屬於W3C標準,試用於Firefox等瀏覽器,但是不支持IE瀏覽器。相反cancelBubble不符合W3C標準,而且只支持IE瀏覽器。所以很多時候,我們都要結合起來用。不過,cancelBubble在新版本chrome,opera瀏覽器中已經支持。

語法:e.stopPropagation();

參數e:表示事件傳遞的參數,代表事件的狀態。

[html]
  1. <html>
  2. <head>
  3. <title>冒泡測試</title>
  4. </head>
  5. <body onclick="alert(‘body‘);">
  6. <div onclick="clickBtn(event)" style="width:100px;height:100px; background:#666;">
  7. <input id="Button1" type="button" value="button" onclick="alert(‘btn‘);" />
  8. </div>
  9. <script language="javascript" type="text/javascript">
  10. function clickBtn(event)
  11. {
  12. event=event?event:window.event;
  13. event.stopPropagation();
  14. alert("OK");
  15. }
  16. </script>
  17. </body>
  18. </html>

事件冒泡之cancelBubble和stoppropagation的區別