我有一个嵌入以下内容的网站:
<div class="embed-responsive embed-responsive-16by9">
<iframe id="video-markets" class="embed-responsive-item" src="http://www.youtube.com/embed/txFhtgO7-28?enablejsapi=1"></iframe>
</div>
当您单击“播放”,“暂停”以及到达“视频结尾”时,我正在尝试收集事件。为此,我添加了YouTube本身提供的以下API:
var tag = document.createElement('script');
tag.src = "http://www.datagro.com.br/datagro-markets/js/iframe_api.js";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
然后通过js进行通话事件:
var pauseFlag = false;
function onPlayerReady(event) {
}
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.PLAYING) {
_gaq.push(['_trackEvent', 'Video', 'Play', 'Video Play']);
pauseFlag = true;
}
if (event.data == YT.PlayerState.PAUSED && pauseFlag) {
_gaq.push(['_trackEvent', 'Video', 'Pause', 'Video Pause']);
pauseFlag = false;
}
if (event.data == YT.PlayerState.ENDED) {
_gaq.push(['_trackEvent', 'Video', 'Finished', 'Video Visualizado']);
}
}
但是我无法在Google Analytics(分析)中注册我的事件。该问题仅与视频有关,因为我可以记录其他链接
<a>
并测量站点统计信息。我在使用调试器时注意到的一个细节是出现以下错误,不知道是否有事要做:
XMLHttpRequest cannot load [...] No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
有人可以帮我弄清楚为什么我不能注册对视频的点击吗?
最佳答案
您的iframe网址必须包含iframe的&origin=http://example.com
,以便您收听播放器事件。
关于video - 如何在YouTube视频中添加Google Analytics(分析)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28729581/