我有一个 60 秒长的视频。我正在添加一些 JavaScript 以将数据从我的视频播放器发送到 Google Analytics。我要做的是在一段时间内每 60 秒不超过一次启动一个事件。
因此,例如,用户观看 21 到 40 秒的视频,我希望只启动一个事件(而不是在 19 秒的时间内启动 19 次)。然后用户观看 41 到 60 秒的视频,我只想启动一个事件。我实际上已经弄清楚了这部分。
问题在于时间。因此,如果用户观看 21 到 40 秒,它就会启动一个事件。他们观看视频的其余部分并对其进行心理处理并决定“嘿,我想再次观看视频”。如果他们再次观看视频,除非他们刷新页面,否则 21 到 40 秒的事件将不会再次启动。
如何编辑我的脚本,以便在特定范围内每 60 秒仅启动一次事件?
<script type="text/javascript">
function Follow( minimum, maximum )
{
this.min = minimum;
this.max = maximum;
this.done = false;
}
var following = [
new Follow( 1, 20 ),
new Follow( 21, 40 ),
new Follow( 41, 60 )
];
player().Time(
function(event)
{
var gone = Number(event.secondspassed);
for ( var t = 0; t < following.length; ++t )
{
var Follow = following[t];
if ( gone >= Follow.min && gone < Follow.max )
{
if ( ! Follow.done )
{
var range = Follow.min + " Seconds Watched ";
_gaq.push(['_trackEvent', range, 'Play', 'Title']);
Follow.done = true;
}
break;
}
}
}
);
</script>