如何解决iOS Safari 通过点击链接切换页面时跟踪用户
我正在尝试跟踪用户在我网站的特定页面上停留的时间。我使用 sendbeacon、AJAX 作为后备和页面可见性 API。关闭或切换标签页时,它适用于所有浏览器,甚至适用于 Safari。
现在的问题是,当我在我的网站上使用导航链接时,跟踪在 Safari 中不起作用,但在所有其他浏览器中起作用。代码如下:
// Check browser Support of sendbeacon
if(navigator.sendbeacon) {
// Check browser Support of Page Visibility API
var visibilityHidden,visibilityChange;
// Opera 12.10 and Firefox 18 and later support
if(typeof document.hidden !== "undefined") {
visibilityHidden = "hidden";
visibilityChange = "visibilitychange";
} else if(typeof document.mozHidden !== "undefined") {
visibilityHidden = "mozHidden";
visibilityChange = "mozvisibilitychange";
} else if(typeof document.msHidden !== "undefined") {
visibilityHidden = "msHidden";
visibilityChange = "msvisibilitychange";
} else if(typeof document.webkitHidden !== "undefined") {
visibilityHidden = "webkitHidden";
visibilityChange = "webkitvisibilitychange";
}
if(visibilityHidden !== undefined) {
document.addEventListener(visibilityChange,function() {
if(document[visibilityHidden]) {
var data = new FormData();
data.append('pageid','{{page::id}}');
data.append('userid',uid);
data.append('language','{{page::language}}');
data.append('referer',decodeURIComponent(document.referrer));
data.append('start',starts);
data.append('duration',Math.ceil(TimeMe.getTimeOnCurrentPageInSeconds(window.location.href)));
navigator.sendbeacon('/time/',data);
}
});
} else {
sendAjax();
}
有人知道如何解决这个问题吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。