1
当用户收听或下载我的歌曲并为Goole Analytics生成事件时,我试图抓住JQuery。jQuery下载后重新点击
对于与<音频>元素的互动,它可以正常工作,但用户下载歌曲时会遇到一些麻烦。
的代码是:
$("audio").bind("play", function(event){
ga('send', 'event', 'Audio', 'Play', event.target.id);
});
$("audio").bind("ended", function(event){
ga('send', 'event', 'Audio', 'Ended', event.target.id);
});
$("a:contains('Download')").click(function(event){
ga('send', 'event', 'Audio', 'Download', event.target.id);
});
都发挥并最终事件被逮住,直到第一次用户点击“下载”链接。第一个下载事件被正确触发,但从现在开始没有更多事件被检测到,无论是播放还是结束。 我也试过:
$(document).on("click" , "a:contains('Download')" , function(event){
ga('send', 'event', 'Audio', 'Download', event.target.id);
});
有类似的结果。
我可以补充一点,它似乎与“另存为”对话框的外观有关。我注意到,在调试模式下,如果我用'.mouseover'替换'.click',事件总是被检测到,但“另存为”对话框不会出现。 – Luca 2014-10-18 01:56:52
你能告诉我们一个代码示例吗?我没有看到类似html/js(demo:http://codepen.io/anon/pen/CLwio)的通用设置发生这种情况,并且没有在我面前看到它进行调试,很难猜到问题是。 – 2014-10-18 04:29:44
这是代码。 HTML: ''' '
' <脚本类型= “文本/ JavaScript的” SRC = “JS/LAB.min.js”>'' '' ''<音频ID = “简历” 控制预载= “元数据”> <源SRC = “/ MP3/Mysong.mp3” 类型= “音频/ MPEG”> '' 'Download '' JS:musicfunctions.js的内容是主帖中的内容。 – Luca 2014-10-18 17:14:39