親イベント ハンドラーの実行の防止
指定された HTML 構造で、任意の div 要素をクリックすると、その親 div のクリック ハンドラーがトリガーされます。意図しない動作につながります。これを防ぐには、jQuery を使用してクリック イベントの伝播を無効にします。
<div>
function func() { if ($(childId).hasClass("visible")){ $(childId).removeClass("visible"); $(childId).addClass("invisible"); }
クリック イベントの伝播を無効にするには、stopPropagation() メソッドを呼び出すイベント ハンドラーを子要素に追加します。
function handler(event) { event.stopPropagation(); // Custom code to execute for the child's click event } $('#a').add('#b').click(handler);
イベントの伝播を防ぐことで、子要素 ('#b') をクリックしても親要素のトリガーが発生しなくなります。クリック ハンドラー ('#a')。同様に、子孫要素 ('#c') をクリックしても、両方の親要素 ('#b' と '#a') には反映されません。
以上がjQuery で子要素のクリックで親イベント ハンドラーが実行されないようにするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。