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

不明なセレクターと子を持つ Javascript イベント デリゲート

要素のクリックをキャプチャする動的セレクター (linkTrigger) があります。 linkTrigger が何であるか、また子が存在するかどうかはわかりません。 jQueryを使用すると、すべて問題ありません。

最初の緑色の四角形 (数字の部分ではない) をクリックすると、3 つのハンドラーがすべて期待どおりに動作していることがわかりますが、最初の緑色の四角形内の数字をクリックすると、jQuery と javascript2 のみがハンドラーとして動作しています。緑色のボックス内のスパンをクリックしても次の条件を満たさないため、予想どおりです:

リーリー

子供には css point-events none を使用できません。 linkTrigger が何なのかわからないし、クリックされたくないからです。内容を変更する。

問題は、javascript2 ハンドラーが動的ではないことです。つまり、後から dom 内に追加するすべての新しい ".a" ボックスにこのハンドラーを追加する必要があります。

もっと良い解決策はありますか?

リーリー リーリー リーリー

P粉187677012P粉187677012220日前504

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

  • P粉022285768

    P粉0222857682024-04-04 13:37:49

    event.target は、まさにあなたがクリックしたものです。したがって、要素内のスパンをクリックすると、親要素ではなくスパンが取得されます。

    したがって、登録するスパンのクリックを取得するには、アンカー タグを取得するのと同じように、closest() を使用できます。

    リーリー リーリー リーリー

    返事
    0
  • キャンセル返事