使用GA跟踪iframe时,我会向父页面添加一个脚本,如
<script>
setTimeout(function(){
ga(function(tracker) {
var clientId = tracker.get('clientId');
var frameWindow = document.getElementById('iframeId').contentWindow;
frameWindow.postMessage(clientId, 'https://parentpage.com');
});
}, 2000);
</script>
只要只有一个iframe,就可以了。
但是现在我有一个页面,其中包含三个iframe,它们具有自己的不同ID,应该分别进行跟踪。
我应该如何定位某些iframe以分别跟踪每个iframe?
答案 0 :(得分:1)
您可以选择类似这样的iframe
let iframes=document.querySelectorAll("iframe");
iframes.forEach(elem=>{
console.log(elem.getAttribute("id"))// address your iframe separately here
})
<iframe id="one">
</iframe>
<iframe id="two">
</iframe>
答案 1 :(得分:1)
您可以像这样迭代所有iframe:
var frames = document.getElementsByTagName("iframe");
for(var i=0;i<frames.length;i++)
{
//do what ever you want with frames[i]
}
或者,您可以使用forEach对其进行迭代:
var frames = document.getElementsByTagName("iframe");
frames.forEach(function(frame){
//do what ever you want with frame
})
祝你好运!