既存のページ コードを変更せずに、Javascript/JQuery を使用して Web ページからのすべてのアウトバウンド クリックを追跡する方法を探しています。ソリューションは、フレーム、iframe、さまざまなドメインのコンテンツ、AJAX などで動作する必要があります。
おそらく、Javascript はユニバーサル ソリューションとしては不適切なテクノロジです。もしそうなら、何が良いか教えてください。
既存のページ コードを変更せずに、Javascript/JQuery を使用して Web ページからのすべてのアウトバウンド クリックを追跡する方法を探しています。ソリューションは、フレーム、iframe、さまざまなドメインのコンテンツ、AJAX などで動作する必要があります。
おそらく、Javascript はユニバーサル ソリューションとしては不適切なテクノロジです。もしそうなら、何が良いか教えてください。
外部リンクのすべてのクリックをキャプチャするのは簡単です。
$(document).ready(function() {
$("a[@href^=http]").each(function(){
if(this.href.indexOf(location.hostname) == -1) {
// Handle click here
}
});
});
これをiframeで機能させるのは少し難しいです。同一生成元ポリシーにより、iframeは同じドメインに存在する必要があります。もしそうなら、あなたは上記のcssセレクターを次のようなものに変更できるはずです$("#iframe_id").contents().find("[@href^=http]")
簡単な解決策があります:
get all a elements
check href to see if it begins with http or https
if so and the domain is external to your site, add a click handler