我有一段代码可以进行一些谷歌分析。它看起来像这样:
$(function () {
$('.plan-choose-btn a').bind('click', function(e) {
//ga load image
<% String myaccGAEventUrl = trackGoogleAnalyticsEvent(request, "MO-22651379-1", "calltoaction", "buy", "PLC_HOLDER"); %>
var action = '<%=myaccGAEventUrl%>';
var hr = $(this).attr('href');
var bundle = hr.split("id=")[1].split("&")[0];
action = action.replace("PLC_HOLDER", bundle);
$('body').append('<img src="'+action+'" width="1" height="1" />');
});
});
如果我在桌面浏览器中调试它,我可以看到变量“action”已更新,占位符文本替换为正确的值。但我在 GA 仪表板上看到这种情况在移动设备上没有发生,因为我看到了很多“PLC_HOLDER”事件标签。
是否有可能是字符串.replace()函数在手机上无法正常工作?
最佳答案
replace
函数在 JavaScript 1.2 中引入,自 1997 年以来一直存在。某些较旧的设备(即浏览器)始终有可能不完全支持 JavaScript 的某些功能。
我会检查 Google Analytics,看看哪些设备/浏览器允许 PLC_HOLDER
字符串通过,这可能会提示您是否需要更改生产代码以使用除replace
函数来处理这些设备,或者您是否可以安全地忽略这些设备。
关于javascript - string .replace() Javascript 函数在移动设备上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13572728/