JavaScriptはイベントのバブルを阻止する(IE、Chrome、FF対応)

1639 ワード

ここでは単純なコードdemoにすぎません.時間の問題で深く研究されていません.今日プロジェクトをするときにイベントの泡を止める内容を使うので、たくさん探してやっと使えるものを見つけました.特記しています.
<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>      </title>
	<script src="js/jquery-1.11.3.min.js"></script>
	<script src="js/jquery.cookie.js"></script>
	<style type="text/css">
	</style>
	<script type="text/javascript">
		function clickDiv(){
			alert("clickDiv");
		}
		function clickP(event){
			stopEvent(event);
			alert("clickP");
		}
		function stopEvent(event){ //      
		 //      
		 var e=arguments.callee.caller.arguments[0]||event; //     ,   e  event,IE    ,           
		 if (e && e.stopPropagation) {
		  // this code is for Mozilla and Opera
		  e.stopPropagation();
		 } else if (window.event) {
		  // this code is for IE
			window.event.cancelBubble = true;
		 }
		}
	</script>
</head>
<body>
	<div onclick="clickDiv()" style="width:100px; height:100px; background-color:red;">
		<p onclick="clickP(event)" style="width:50px; height:50px; margin:auto; background-color:green;">
			abad
		</p>
	</div>
	<script type="text/javascript">
	</script>
</body>
</html>