フォームボタンをクリックして別サイトにジャンプするイベントを計測してみた

別件で相談があったので、朝からGoogleアナリスティックのコードを設定してみた。


要件は、あるサイトのフォームのボタンをクリックすると違うサイトにジャンプする。

これをイベントとして計測したいというものだ。


いろいろ探して次のコードを提示した。


まず、フォームのsubmitボタンにIDを指定する。

IDはなんでもよい。ここではbuttonとした。

<input type="submit" value="" id="button" />


次にスクリプトで以下のように記述する。


<script>
var formButtonClick = document.getElementById('button');
addListener(formButtonClick, 'click', function() {
  ga('send', 'event', 'form', 'click', 'ジャンプ先のURL');
});
function addListener(element, type, callback) {
 if (element.addEventListener) element.addEventListener(type, callback);
 else if (element.attachEvent) element.attachEvent('on' + type, callback);
}
</script>


これだと、ブラウザ越えのリンクでも計測できるそうだ。

なるほどね。


イベント トラッキング – ウェブ トラッキング(analytics.js) – Google アナリティクス — Google Developers


朝から目が覚めました。