検索

ホームページ  >  に質問  >  本文

javascript - 2 つのクリック イベント。大きな DIV には小さな DIV が含まれています。小さな DIV をクリックすると、大きな DIV もトリガーされます。これに対処するにはどうすればよいですか?

2 つのクリック イベント、大きな p には小さな p が含まれており、小さな p をクリックすると、大きな p もトリガーされます。
図に示すように、小さな p 内のクリックをクリックすると、大きな p もトリガーされます。ここでは、小さな p のみをクリックすると、小さなクリック イベントのみがトリガーされます。それに対処しますか?

###############今###
某草草某草草2816日前1388

全員に返信(8)返信します

  • 伊谢尔伦

    伊谢尔伦2017-05-27 17:46:35

    stopPropagation()

    返事
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-27 17:46:35

    オブジェクト上で特定のタイプのイベント (onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window をクリックするなど) をトリガーすることは、イベント バブリングと呼ばれます。

    リーリー

    返事
    0
  • 迷茫

    迷茫2017-05-27 17:46:35

    JSのバブリング(キャプチャ)イベントです

    このような解決策は非常に簡単です

    リーリー

    返事
    0
  • PHP中文网

    PHP中文网2017-05-27 17:46:35

    js のバブリング、バブリングをキャンセルするだけです
    イベント委任を使用すると、この問題は発生しません

    返事
    0
  • 为情所困

    为情所困2017-05-27 17:46:35

    これら 2 つの記事を読んでも理解できない場合は、私に来てください:

    http://javascript.info/bubbli...
    https://stackoverflow.com/que...

    返事
    0
  • 阿神

    阿神2017-05-27 17:46:35

    私は 2 つの解決策を考えています:
    1. イベントのバブリングを防ぐ。
    イベントバブリングは、内側の子要素から外側の親要素まで段階的に実行されます。子要素のクリックイベントを実行する場合、イベントを上位層に渡すことができないように、バブリングブロックイベントを呼び出す必要があります。上位層のイベントを実行します。
    2. クリックを引き起こした要素に基づいてさまざまなイベントを実行します。
    クリックされた要素が子要素による場合はイベントAが実行され、子要素でない場合はイベントBが実行されます。

    返事
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-27 17:46:35

    この事件の詳細については、こちらを参照してください/a/11...

    返事
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-27 17:46:35

    通常の慣例によれば、このようにトリガーされることはありません。クリックイベントをバインドするために使用するセレクターを知りたいのですが、クリックコードとp

    のHTMLコードを投稿した方がよいでしょう。

    返事
    0
  • キャンセル返事