繁体   English   中英

链接外部JS文件

[英]Linking External JS Files

我正在做一项作业,要求我将外部JS文件链接到HTML文件。 这是JS(文件名“ whileLoop.js”):

function evenCount () {

var loopCount = 2;

while (loopCount <= 101) {

    document.write(loopCount + " is an even number. <br /">);
    loopCount = (loopCount + 2);

    }

}   

这是HTML:

<!DOCTYPE html>

<head>
<title>JS Assignment</title>
<head>

<body>

<script type="text/javascript" src="/whileLoop.js"></script>

</body>

</html>

如果我将原始JS代码(不带函数调用)复制到标签内的HTML文件中,则HTML可以正确输出。 当我尝试链接到HTML文件中的JS文件时,HTML输出空白页。

预期的输出是一个列出2到101之间的每个偶数的页面。

document.write行在<br /">处存在语法错误-注意引号在>的左侧而不是在右侧?


对于直接在HTML中而不是外部文件中的JS,您可以通过将其包装在<script></script>在HTML中包含任何JS,而在包含外部JS文件时,则需要使用src属性指向的<script>到该文件,并确保有所述的内没什么 <script src='whileLoop.js'>和关闭</script> 在特定情况下,如果要使用外部文件,请确保whileLoop.jsindex.html位于同一目录中,然后按照以下代码片段将其包括在内:

这是您的代码,该脚本使用HTML中的脚本以及HTML的<head>部分中包含的另一个文件。 请注意, <head>包含的脚本无效,我添加了这一行,只是为了向您展示使JS在代码内工作的两种方式。

 <head> <title>JS Assignment</title> <head> <script type="text/javascript" src="whileLoop.js"></script> </head> <body> <script> function evenCount () { var loopCount = 2; while (loopCount <= 101) { document.write(loopCount + " is an even number. <br />"); loopCount = (loopCount + 2); } } evenCount(); </script> </body> 

您可以将标记和html更改为以下内容。 我希望它也对您有用:

JS:while.js

function evenCount() {
    console.log(loopCount);
    var loopCount = 2;
    while (loopCount <= 101) {
        document.write(loopCount + " is an even number. <br />");
        loopCount = (loopCount + 2);
    }
}

evenCount(); 

HTML:

<!DOCTYPE html>
<html>

<head>
    <title>JS Assignment</title>
</head>

<body>
    <script type="text/javascript" src="/while.js"></script>
</body>

</html>

基本上,您有未关闭的标签,并且它是您正在写入的不完整呈现的DOM。 这造成了不平衡的树错误。 另外,您的JS没有被调用(较早)。 如果将代码包装在一个函数中,则必须调用它。

(PS:请注意JS文件名更改)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM