前提・実現したいこと
iframe内にあるページ(以下、「子ページ」。親ページと同じドメインにあります)の
フォーム内の<button>のクリック数を
親ページのGoogleタグマネージャー(GTM)/Google Analytics(GA)で計測しようと試みています。
Google Analyticsで2重に集計しないようにするため、
子ページにはGTMのタグは設置しません。
Googleタグマネージャーについては、
ほぼ初めて利用しているため、どこが間違っているのか、合っているかもよくわからない状態です。
そもそもこのやり方、方向性自体が間違っているのかもしれないので、
コーディングを修正すればよいのか、まったく別の方法がありそうか、
ご教授いただけると幸いです。
該当のソースコード
親ページに記述したJS
・#iframeは、iframeのID
・#submitは、iframe内のボタンにつけたID
・親ページにて、ChromeのデベロッパツールのConsoleで、この「click」は表示されるので、
子ページからのデータを送ることはできているかもしれない。
・だが、GAではイベントの計測がされない。
・eventCategoryなどは、親ページにてテキストリンクで使っているものを流用しており、
そのテキストリンクでは計測はできている。
html
1<script> 2$(window).on("load", function(e){ 3 $("#iframe").contents().find("#submit").on("click", function(e){ 4 console.log("click"); 5 ga('send', { 6 hitType: 'event', 7 eventCategory: 'CATEGORY', 8 eventAction: 'ACTION', 9 eventLabel: 'LABEL', 10 eventValue: 1 11 }); 12 }); 13}); 14</script>
子ページに記述したJSとボタン
HTML
1<button type="button" class="ga_clikEvnt_count" id="submit">検索する</button>
※子ページにGTMタグを設置した場合は、
このボタンをクリックしたときにイベントとして計測できることは確認済み。
子ページにGTMタグを設置せずに、親ページのGTMタグで計測したい。
試したこと
・iframeの代わりにインクルードファイルやJSで読み込むことを試したが、
子ページにあるJSと親ページのJSでコンフリクトが起こるため断念。
(それぞれのJSが別会社が作ったモジュールのため改造するのが困難)
https://2m3g1.com/4599.html
こちらも参考にしてみましたが、計測できず。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/12 05:40
2020/10/12 06:23
2020/10/12 07:34
2020/10/12 07:40