私は生のJavaScriptにかなり慣れていません(jQueryの操作に慣れています)。いくつかのリンクのクリックをキャッチし、デフォルトのアクションを防止してから、リンクの href に基づいて何かを行う必要があります。
一部のリンクはまっすぐ<a href="example.com">Lorem</a>
ですが、他の html 要素 (画像、スパンなど) を含むものもあります。同じイベント ハンドラーを必要なすべてのリンクにバインドします。私は回避策の関数を使用しますが、Chrome ではそれが使用するaddEventListener
,useCapture
は false です。
私のイベント ハンドラーではevent.target.getAttribute('href')
、リンクが指している場所を取得するために使用します。これは、最初の種類のリンクで作業している場合は機能しますが、画像またはスパンをクリックした場合は機能しません。これは、event.target がリンクではなく画像またはスパンであるためです。これはイベントのバブリングと関係があると推測していますが、解決策はよくわかりません。