รหัส
รหัส JavaScript
//หากมีการระบุวัตถุเหตุการณ์ นี่คือเบราว์เซอร์ที่ไม่ใช่ IE
ถ้า (e && e.stopPropagation)
//ดังนั้นจึงรองรับเมธอด stopPropagation() ของ W3C
e.stopPropagation();
อื่น
//ไม่เช่นนั้น เราจำเป็นต้องใช้ IE เพื่อยกเลิกเหตุการณ์ที่เดือดพล่าน
window.event.cancelBubble = จริง;
return false;
โค้ด JavaScript
พฤติกรรมเริ่มต้นของเบราว์เซอร์
//หากมีการระบุออบเจ็กต์เหตุการณ์ แสดงว่าเบราว์เซอร์นี้ไม่ใช่ IE
ถ้า (e && e.preventDefault)
//บล็อกการกระทำของเบราว์เซอร์เริ่มต้น (W3C)
e.preventDefault();
อื่น
//วิธีป้องกันการทำงานเริ่มต้นของฟังก์ชันใน IE
window.event.returnValue = เท็จ;
กลับเท็จ;
รหัส
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
2<html xmlns=" http://www.w3.org/1999/xhtml " lang="gb2312">
3<หัว>
4<title> ป้องกันไม่ให้เหตุการณ์ JavaScript เดือด (cancelBubble, stopPropagation)</title>
5<meta name="keywords" content="JavaScript, เหตุการณ์เดือดปุด ๆ, cancelBubble, หยุดการขยายพันธุ์" />
6<script type="text/javascript">
7function doSomething (obj, evt) {
8alert(obj.id);
9var e=(evt)?evt:window.event;
10if (window.event) {
11e.cancelBubble=จริง;
12} อื่น ๆ {
13//e.preventDefault();
14e.หยุดการขยายพันธุ์();
15}
16}
17</script>
18</หัว>
19<ร่างกาย>
20<div id="parent1" onclick="alert(this.id)" style="width:250px;พื้นหลัง-สี:สีเหลือง">
21<p>นี่คือ parent1 div</p>
22<div id="child1" onclick="alert(this.id)" style="width:200px;พื้นหลัง-สี:orange">
23<p>นี่คือลูก1</p>
24</div>
25<p>นี่คือ parent1 div</p>
26</div>
27<br />
28<div id="parent2" onclick="alert(this.id)" style="width:250px;พื้นหลัง-สี:สีฟ้า;">
29<p>นี่คือ parent2 div</p>
30<div id="child2" onclick="doSomething(this,event);" style="width:200px;พื้นหลัง-สี:lightblue;">
31<p>นี่คือลูก2 จะเกิดฟอง</p>
32</div>
33<p>นี่คือ parent2 div</p>
34</div>
35</ร่างกาย>
36</html>