我正在尝试用javascript创建一个简单的网页。 HTML工作正常,但我无法运行javascript。我想知道是否有人可以告诉我它有什么问题?
html和javascript文件都在同一个文件夹中,我确保我没有做任何粗心的事情
以下是代码:
var intOne;
var intTwo;
var sec;
window.alert("Testing")
function checkAnswer()
{
if(quiz.outer.answerbox.value === intOne+intTwo)
{
alert("You smart. You loyal.");
alert("Answer is " + parseInt(intOne+intTwo));
} else {
alert("Another One.");
quiz.outer.answerbox.value="";
}
}
function displayQuestion()
{
intOne = Math.floor((Math.random() * 100) + 1);
intTwo = Math.floor((Math.random() * 100) + 1);
document.getElementById('quiz.outer.question').innerText= "What is " + intOne + " + " + intTwo + "?";
quiz.answerbox.value="";
startTimer();
}
function startTimer()
{
sec = 0;
window.setInterval(updateTime(), 1000);
}
function updateTime()
{
sec++
timer.innerText=sec;
}
<!Doctype html>
<html>
<head>
<title>Adding Quiz</title>
<script type="text/javascript" src="addingNumbers"></script>
</head>
<body onload="displayQuestion()">
<h1>Adding Quiz<h1>
<div style="color:blue">
<form name="quiz" action="#">
<p id="outer">
<p id="question">something</p>
<input type="output" id="answerbox" value=""><br>
<input type="button" value="Check" onClick="checkAnswer()">
</p>
</div>
<br>
<p>Time spent on this question so far: <strong id="timer">0</strong> seconds </p>
</body>
</html>
奇怪的是,当我发布代码片段时,javascript似乎正常工作,因为我在运行代码时收到了警告。
答案 0 :(得分:1)
其他可能的答案,如果它是正确的路径,但无论如何都不会加载
content-type: text/plain
标头添加到正在请求的脚本文件中,脚本将不会执行代码。即使您尝试添加type="text/javascript"
。<base>
标记可以更改加载任何资源的位置(但看起来你的html代码判断没有这个问题)<script>
代码... -
而不是adding-numbers.js
而不是addingNumbers.js
(也许某些服务器,文件系统,浏览器可能有问题区分小写/大写和处理他们不同)我使用git时遇到了问题... 如果您尝试直接在浏览器中打开脚本网址会发生什么情况?
尝试使用绝对路径,如果这有助于...
当然,使用控制台/网络选项卡来查找问题所在
我的猜测是,它只是找不到而且src="addingNumbers"
是一条错误的路径
html和javascript文件是否都在同一个文件夹中?
答案 1 :(得分:0)
您的代码中存在错误,但这不会阻止其运行。
您正在调用方法updateTime
并将其返回的内容分配给Interval
window.setInterval(updateTime(), 1000);
您需要删除()
window.setInterval(updateTime, 1000);
旁注,间隔时间不准确。如果您想知道为什么使用setInterval()
不准确,请阅读this answer。
现在你需要弄清楚文件没有加载的原因。为此,您需要查看控制台和网络选项卡。控制台将显示任何JavaScript错误,网络选项卡将显示是否未加载任何文件(未找到404)。正如其他人所指出的那样,您没有在脚本标记中包含文件扩展名。
<script type="text/javascript" src="addingNumbers.js"></script>