gpt4 book ai didi

javascript 文件在我的 jsp 中不起作用

转载 作者:行者123 更新时间:2023-11-30 17:22:32 25 4
gpt4 key购买 nike

我刚开始学习网络开发,遇到了一些麻烦。我想在我的主页上显示一个时钟。只是一个运行的时钟。我使用了 w3 的示例,但它们都在 html 中,我想使用一个单独的文件。当我启动网站时,没有任何反应,时钟也没有显示。当我将放映时间单独放入 jsp 中时,脚本标签就可以正常工作。

index.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<script lang="javascript" type="text/javascript" src="JavaScript/showtime.js"></script>
</head>

<body>
<p>Test</p>
<div id="txt"></div>
<p>Hello World</p>
<p>test2</p>
</body>

showtime.js

function startTime() {
var today=new Date();
var h=today.getHours();
var m=today.getMinutes();
var s=today.getSeconds();
m = checkTime(m);
s = checkTime(s);
document.getElementById('txt').innerHTML = h+":"+m+":"+s;
var t = setTimeout(function(){startTime()},500);
}

function checkTime(i) {
if (i<10) {i = "0" + i}; // add zero in front of numbers < 10
return i;
}

startTime();

最佳答案

@developerwjk 的回答很可能是正确的,但很可能不是全部答案。你的 javascript 在头部,所以它会在 DOM 准备好之前运行(换句话说,在 txt 元素可用之前),所以调用 startTime();将导致 javascript 错误,并且时钟永远不会开始运行。

更改行 startTime();如下:

window.onload = function() { startTime(); };

或者,在结束前立即包含此 javascript 文件 </body>标签。

关于javascript 文件在我的 jsp 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24873944/

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