1

div クリック イベントのアクションを追加しようとしていますが、ある div が別の div に囲まれています。divごとにクリックイベントを変えたい。ただし、div が別の div に囲まれている場合、内側の div のクリック イベントは両方のアクションを実行します。たとえば、.. フィドルとサンプル コードを追加しました。divごとに個別のアクションを単独で作成するにはどうすればよいですか??

http://jsfiddle.net/Dk8vA/

$('#outerDiv').on("click",function(){
     alert("s");    
 });

$('#innerDiv').on("click",function(){
  alert("n");
});
 <div id='outerDiv'><div id='innerDiv'></div></div>
4

3 に答える 3

2

e.stopPropagation()イベントが親にバブル アップするのを防ぐために使用します。

ここを参照

これにより、イベントが DOM ツリーをバブリングするのを防ぎ、親ハンドラーにイベントが通知されるのを防ぎます。#outerDivstopPropagation() イベントを追加すると、その親またはそれ以上にバブルアップしません。

$('#innerDiv').on("click",function(e){
    e.stopPropagation();
alert("n");

});

デモ

于 2013-05-11T04:11:57.507 に答える
2

event.stopPropagation()を使用 して、イベントのバブルアップを防ぎます

フィドルを見る

$('#outerDiv').on("click",function(){
  alert("s");  
});

$('#innerDiv').on("click",function(e){
  alert("n");
  e.stopPropagation();    
});
于 2013-05-11T04:12:13.383 に答える