JavaScript 不能作为外部文件工作
JavaScript not working as an external file
我是HTML,JavaScipt和与编程相关的一切的新手,我正在尝试创建一个简单的页面。
现在,我遇到了以下问题:我想更改main.html
文件的日期,但main.js
不起作用。我已经将<script>
位置更改为<body>
内,在</span>
之后,甚至在</body>
之后,但没有成功。如果main.js
的内容在 HTML 中,它可以正常工作,但作为外部文件则不能。
这是我的主要.html:
<!DOCTYPE html>
<html>
<head>
<link href="main.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="main.js"></script>
<title>Page 1</title>
</head>
<body>
<p>WRF<br>
<span id="data">18/09/1987</span></p>
</body>
</html>
我的主要.js只是:
document.getElementById("data").innerHTML = "JUBA";
我浏览了互联网和这个论坛,但我找到的所有答案都没有奏效。
这些文件位于同一目录中,主目录.css工作正常。
提前谢谢你。
当你调用main.js元素#data
时,不是在DOM树中创建的。您可以通过在关闭正文之前放置指向 Javascript 文件的链接来解决此问题,如下所示:
<script type="text/javascript" src="main.js"></script>
</body>
文档对象模型 (DOM) 不是 "READY"。
尝试在 main.js 中使用onload
事件:
window.onload = function() {
document.getElementById("data").innerHTML = "JUBA";
};
如果需要比onload
更"快",请使用 jquery 和 $(document).ready
:
.html:
<link href="main.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="main.js"></script>
主.js:
$(document).ready(function() {
$("#data").html("JUBA");
});
window.onload vs $(document).ready()
@Guffa回答:
ready
事件发生在 HTML 文档加载之后,而 onload
事件发生在所有内容(例如图像)也已加载时。
onload
事件是 DOM 中的标准事件,而ready
事件特定于 jQuery。ready
事件的目的是在加载文档后尽早发生,以便向页面中的元素添加功能的代码不必等待加载所有内容。
运行脚本时尚无法访问该元素。您可以将script
放在页面末尾或延迟执行。
您可以将 JavaScript 放在页面其余部分之后的 <body>
标记中。当浏览器加载它时,<span>
已经在那里进行编辑。
根据您的代码,脚本将首先被调用,然后加载页面,因此当脚本运行时,不会有任何元素具有 id 数据,因为必须加载页面。有很多方法可以实现您的需求。1.在正文结束之前或之后添加脚本标签,例如
或
<script type="text/javascript" src="main.js"></script>
</body>
在正文之前写.js文件,即在head标签中,并在onload方法中编写整个javascript代码。
window.onload=function(){document.getElementById("data").innerHTML = "JUBA";};
window.onload=function(){
document.getElementById("data").innerHTML = "JUBA";
};
<p>WRF<br>
<span id="data">18/09/1987</span></p>
- 使用javascript配置文件作为handlebas博客模板,但配置不是't工作正常
- 当加载几个js文件时,defer属性应该如何工作
- 限制文件类型,大小,单次上传不'无法在jquery文件上传中工作
- HTML文件中的智能Javascript建议在Visual Studio代码更新后没有日志程序工作
- 我的代码在<脚本>标记,但没有'不能在外部文件中工作
- HTML5视频无法在chrome上工作,在服务器上托管后的IE,mov文件中的视频(quicktime格式)
- 在Alfresco中动态创建空间/文件夹的Javascript;t工作正确
- 如何让jQuery在我的Typescript文件中工作
- Django,HTML,JS:<img src=“#">可以在HTML中工作,但不能在JS文件中工作
- 在html文件中添加了多个外部javascript,其中一个停止工作
- 日食添加文件而不将其复制到工作区中
- 无法让 javascript 从外部文件工作
- JavaScript 无法从单独的文件工作
- JavaScript 不能作为外部文件工作
- 如何使本地js文件工作
- 为什么头中包含的第二个js文件工作不正常
- 外部javascript文件工作但不调用函数
- 在Node.js中,异步文件IO方法是如何为本地文件工作的?
- JS -画布从图像文件-工作仅与浏览器缓存存在
- 为什么我的Javascript不从PHP文件工作