現在の外部リンク コードが正しく機能していないため、新しいセットを作成するように依頼されました。これは私が別の Web サイトから引っ張ってきたコードですが、適切に動作しているように見えます (欠落していた $().ready を保存してください)。Google が onclick を各外部リンクに手動で配置するようにアドバイスしていることは十分承知していますが、私のサイトではそうするには多すぎるため、キャッチオールとして JQuery に頼っています。私はこれを、通常はユーザーがアクセスできない複数のページに実装することができませんでした (監視パラノイアのため)。その結果、そのページの統計を表示するには、ページ内分析を有効にする必要がありました。少なくとも_gaq.pushが起動することを(アラートを使用して)発見しましたが、外部リンクのクリックは登録されません。コードは次のとおりです(修正済み):
$().ready(function(){
$("a").on('click',function(e){
var url = $(this).attr("href");
if (e.currentTarget.host != window.location.host) {
_gaq.push(['_trackEvent', 'Outbound Link', e.currentTarget.host, url, 0]);
if (e.metaKey || e.ctrlKey || this.target=="_blank") {
var newtab = true;
}
if (!newtab) {
e.preventDefault();
setTimeout('document.location = "' + url + '"', 100);
}
}
});
});
(!newtab) if は、タイムアウトを使用して _gaq.push が確実に起動するようにするためのものです。それを修正するためのアイデアはありますか?
編集:これは外部ファイルであることに注意してください。
Edit2: コードは、それを使用したい他のユーザーが簡単にコピー/貼り付けできるようにエラーが修正されています。マイクに感謝します。