Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为所有内容添加一个外部js文件?_Javascript_External - Fatal编程技术网

Javascript 为所有内容添加一个外部js文件?

Javascript 为所有内容添加一个外部js文件?,javascript,external,Javascript,External,我有一个HTML页面,我想在上面执行几行js代码。现在我只想尝试一件事: document.getElementById("title").style.color = "blue"; 这在jsPage.js中,在我的html页面的头部 <script src="jsPage.js"></script> 我认为这是所有必要的。但是我的标题保持红色(这是附加到html页面的css文档中设置的),而不是变成蓝色。我是否缺少一些标准声明或js文件中的内容?假设docume

我有一个HTML页面,我想在上面执行几行js代码。现在我只想尝试一件事:

document.getElementById("title").style.color = "blue";
这在jsPage.js中,在我的html页面的头部

<script src="jsPage.js"></script>


我认为这是所有必要的。但是我的标题保持红色(这是附加到html页面的css文档中设置的),而不是变成蓝色。我是否缺少一些标准声明或js文件中的内容?

假设
document.getElementById(“title”).style.color=“blue”
位于
jsCalc.js
中,在加载窗口后,您很可能不会更改文本颜色

jsCalc.js
的内容应该是

window.onload = function() {
    document.getElementById("title").style.color = "blue";
};

因为您无法在加载DOM元素之前更改它们。

假设
document.getElementById(“title”).style.color=“blue”
位于
jsCalc.js
中,在加载窗口后,您很可能不会更改文本颜色

jsCalc.js
的内容应该是

window.onload = function() {
    document.getElementById("title").style.color = "blue";
};

因为您不能在加载DOM元素之前更改它们。

很可能,因为您正在文档的头部加载js文件,所以javascript在加载文档之前运行,并且
title
元素存在

有几种方法可以处理它,但最简单的方法是将
脚本
声明移到文件的底部,而不是
,以便在它引用的文档元素之后加载脚本


是确保在加载相关元素后运行javascript的另一种方法。

很可能,因为您正在文档头中加载js文件,所以javascript在加载文档之前运行,并且
title
元素存在

有几种方法可以处理它,但最简单的方法是将
脚本
声明移到文件的底部,而不是
,以便在它引用的文档元素之后加载脚本

是确保javascript在相关元素加载后运行的另一种方法。

由于
标记位于头部,因此在呈现主体之前执行,因此元素“title”不存在

有更好的方法可以做到这一点,但是将
标记放在
之前应该可以

由于
标记位于头部,它在主体呈现之前被执行,因此元素“title”不存在


有更好的方法可以做到这一点,但是将
标记放在
之前应该可以

如Vince所述:您应该使用window.onload,以便代码执行将等待窗口加载并确保DOM存在

但作为一个附加组件,在主体中加载javascript始终是一个很好的实践。 否则,在获取该文件之前,页面加载将被卡住

在某些情况下,js是从其他服务器加载的,并且需要时间,DOM也不会呈现

而且,您可以使用“延迟”属性将脚本保存在头部本身。这将达到同样的目的。“延迟”确保在完成所有操作后加载它

比如:

<script type="text/javascript" scr="page.js" defer></script>

如Vince所述:您应该使用window.onload,以便代码执行将等待窗口加载并确保DOM存在

但作为一个附加组件,在主体中加载javascript始终是一个很好的实践。 否则,在获取该文件之前,页面加载将被卡住

在某些情况下,js是从其他服务器加载的,并且需要时间,DOM也不会呈现

而且,您可以使用“延迟”属性将脚本保存在头部本身。这将达到同样的目的。“延迟”确保在完成所有操作后加载它

比如:

<script type="text/javascript" scr="page.js" defer></script>


导入脚本时会调用它。因此,如果您在创建id为“title”的元素之前导入此脚本,它将找不到它,并且不会产生任何效果。在导入它时会调用脚本。因此,如果您在创建id为“title”的元素之前导入它,它将找不到它,并且没有任何效果。啊,我明白了,我不明白它是如何工作的。最终,我的js将只具有响应用户操作的功能。所以这应该在头部部分仍然有效,对吗?啊,我明白了,我不明白这是怎么起作用的。最终,我的js将只具有响应用户操作的功能。所以这在头部部分仍然有效,对吗?