2016-06-08 44 views
1

问题是我尝试将我的代码放在单独的JavaScript文件中。并且一个文件将引用文件中的一个变量,该文件以前在index.html文件中引用。我的前端JavaScript文件无法访问其他javascript文件中的变量

例如,我的公用文件夹中的两个文件是client.jstest.js

在我client.js文件,我有这些代码:

function init() { 
    var socket = io.connect(); 
    var temp = x; 
} 

document.addEventListener("DOMContentLoaded", init, false); 

在我test.js文件,我有这些代码:

var x = 5; 

在我index.html文件,我有这些代码:

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Amazing Particle System</title> 
     <meta charset="utf-8"> 
     <link rel="stylesheet" type="text/css" href="style.css"> 
    </head> 
    <body> 
     <canvas id="particle"></canvas> 
     <script src="/socket.io/socket.io.js"></script> 
     <script scr="/test.js"></script> 
     <script src="/client.js"></script> 
    </body> 
</html> 

但是当我运行我的代码时,我总是得到错误:

client.js:15 Uncaught ReferenceError: x is not defined

在开发人员工具中,我无法在来源选项卡中看到我的test.js文件。

有什么我在我的代码中做错了吗?我该如何解决这个问题?

+0

在哪里以及你如何调用init函数,你有没有考虑通过X作为调用它时的参数? –

+0

@VladimirDrenovski我省略了一些io连接的代码。但是这是一个nodejs项目的客户端,所以你明白了。正如我在问题中所说的,'init'函数在'client.js'中被调用。 – newguy

+2

你必须更正''中的拼写错误,你写了'scr'而不是'src'属性。这就是为什么你的脚本不工作 –

回答

2

你必须纠正<script scr="/test.js"></script>一个错字,你已经写了scr代替src属性..这就是为什么按照预期的脚本不工作

相关问题