gpt4 book ai didi

项目上线时 Javascript 未定义

转载 作者:行者123 更新时间:2023-11-29 21:50:48 27 4
gpt4 key购买 nike

我有下面的代码,会根据屏幕的大小来判断是否重定向到移动版的网站。一旦进入移动网站,如果他们选择查看桌面版本,他们将被重定向回桌面版本并创建一个 cookie,这样他们就可以继续浏览桌面版本而无需再次重定向。

  $(function() {
if (window.location.href.indexOf(".au") > -1) {
var oldURL = document.referrer;

var t = getCookie("fromMobile");

if (oldURL.indexOf("m.domain") > -1) {
var date = new Date();
var minutes = 30;
date.setTime(date.getTime() + (minutes * 60 * 1000));
document.cookie = "fromMobile=Yes; expires=" + date.toGMTString() + "; path=/";
} else {
if (t == "") {
if (screen.width <= 760) {
window.location = "http://m.domain.com.au/";
}
}
}

function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') c = c.substring(1);
if (c.indexOf(name) == 0) return c.substring(name.length, c.length);
}
return "";
}
}

});

当我在本地/暂存服务器上运行它时,它按预期工作,我没有收到任何 javascript 错误,但是当推送到 live 时,我收到的错误是在下一行

var t = getCookie("fromMobile");

它说 getCookie 是未定义的

我不确定为什么这在本地和登台服务器上有效,我在本地/登台运行时在 getCookie 中添加了警报,我看到了警报....

最佳答案

将 getCookie 定义移到“t”var 之上,您也可以更喜欢使用语句混合函数时的表达式,这将解决未定义的问题。

关于项目上线时 Javascript 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29380271/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com