我第一次编写一些 javascript,并尝试在加载时将其调用到正文。它似乎在 Chrome 的隐身模式下工作没有任何问题,但在正常模式下它会给出 ReferenceError。
它在 Safari(正常和隐身模式)、Internet Explorer(正常和隐身模式)和 Chrome(仅隐身模式)中完美运行。在 Chrome 正常模式下,它会给出错误。
// javascript.js
function onLoad()
{
var language_get = Cookies.get('language');
if (language_get == null) {
setLang();
} else {
var language_code = Cookies.get('language');
document.getElementById("out").innerHTML = language[language_code];
}
var card_load = Cookies.get('card');
document.getElementById("card_out").innerHTML = card_load;
}
// index.html
<head>
<script type="text/javascript" src="javascript.js"></script>
</head>
<body onload="onLoad();">
Chrome 中的错误控制台给出:
Uncaught ReferenceError: onLoad bs00-01.html:14 is not defined
at onload (bs00-01.html:14)
最佳答案
第一个修复:
Javascript 区分大小写。意思是<body onload="OnLoad();">
将寻找一个方法OnLoad()
,而不是onLoad()
.
Uncaught ReferenceError 可能指对 OnLoad
的引用找不到。
第二个修复:
下面我准确地放置了您的代码,并且函数调用有效(但说Cookies
未定义,因为OP中未提供)。
这让我相信您没有正确链接 javascript 文件。
function onLoad()
{
var language_get = Cookies.get('language');
if (language_get == null) {
setLang();
} else {
var language_code = Cookies.get('language');
document.getElementById("out").innerHTML = language[language_code];
}
var card_load = Cookies.get('card');
document.getElementById("card_out").innerHTML = card_load;
}
<body onload="onLoad();">
关于javascript - Chrome 上的 onLoad 给出 Uncaught ReferenceError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55431639/