0

我在理解外部 javascript 页面的变量范围时遇到了一个非常简单的问题。如果我调用外部工作表,从我读到的所有全局函数和变量都应该能够被访问。我似乎无法让它工作。知道要搜索的正确问题是困难的部分,我可以在互联网上搜索几天来寻找一个可能有人可以轻松快速地解释的问题。我在本教程http://www.tizag.com/javascriptT/javascriptexternal.php中看到了类似的东西,我快速搜索堆栈发现:JavaScript 中变量的范围是什么?即使在我写这篇文章的时候,我也在寻找答案。

只是我在同一目录中有一个外部工作表,文件名为 trial.js。然后我有一个 index.html 只是试图使用从外部 trial.js 到索引页面的全局函数。这个有可能?根据 tizag 教程,使用按钮 onclick 属性中的函数。也有很多框架也在这个原则上工作,对吗?虽然我知道使用 $(a)​​<~~~references?? 或者其他的东西。感谢任何人的帮助,我会继续寻找,但希望互联网可以提供帮助!

本地主机/trial.js:

function trySomething(){
    alert("trying");
}

本地主机/index.html:

<html>
<head>
<title>Objects222</title>
<script src="trial.js"></script>
</head>
<body>
    <script type="text/javascript">
        trySomething();
    </script>
    Hello
</body>
</html>

它最初是在资源中,但我想让它更简单。使用 Firefox 和 chrome 对我不起作用???那些说它正在加载页面的人,您会收到“正在尝试”的警报?任何人都知道为什么它可能无法在本地工作。我清除了所有缓存并尝试重命名以强制上传。还使用了 Chrome、Firefox 和 IE,在加载@localhost 时仍然没有警报。

4

3 回答 3

0

我不确定,但我认为您不应该在“资源”之前有 /。前任。“资源/myscript”会起作用。此外,如果“trial.js”与“index.html”在同一目录中,则不需要“Resources/”。

于 2013-01-08T01:15:17.970 回答
0

我刚刚在 Apache 上对此进行了测试,它工作正常,假设您的外部 JavaScript 文件位于一个名为 resource 的文件夹中。

于 2013-01-08T01:16:18.640 回答
0

这似乎应该没问题,所以我复制了您的代码并对其进行了测试,它对我有用。我所做的一个更改是删除脚本 src 中的第一个斜杠,因为我的“资源”文件夹不在站点根目录中。你的js文件肯定被加载了吗?

于 2013-01-08T01:20:58.763 回答