This question already has answers here:
Why does jQuery or a DOM method such as getElementById not find the element?
(8个答案)
2年前关闭。
我是jQuery和javascript的新手。我在这里尝试一些事情,所以让我解释一下我所拥有的:
-我有几个单独的.js文件正在运行代码。在index.html文件中的代码触发之前,我无法让它们加载。它总是加载jQuery文件(设置window属性),然后加载index.html,然后将所有其他.js文件与jQuery主文件一起列出。因此,我正在尝试解决此问题。
我已经将我的JavaScript分离为单独的文件:
-
-
-
-
这些都在
我的问题是它加载
我目前正在这样做:
但是,尚未定义
所以我想我的问题是我可以声明一个可以在
如果没有,除了使用外部源/应用程序外,如何确保按顺序加载javascript文件?我计划以后以更复杂的方式使用这个想法,所以我需要这个工作。
因此它将在页面加载时运行。
(8个答案)
2年前关闭。
我是jQuery和javascript的新手。我在这里尝试一些事情,所以让我解释一下我所拥有的:
-我有几个单独的.js文件正在运行代码。在index.html文件中的代码触发之前,我无法让它们加载。它总是加载jQuery文件(设置window属性),然后加载index.html,然后将所有其他.js文件与jQuery主文件一起列出。因此,我正在尝试解决此问题。
我已经将我的JavaScript分离为单独的文件:
-
jQuery.js
(mini)//从任何本地或主要的ajax源都可以正常工作-
mainpage.js
//用于主页设置的javascript代码。它在那里需要的元素,目前没有。-
mainmenu.js
//这将加载mainmenu.html,其中包含mainmenu列表。-
index.html
//我要在其上运行的唯一代码是将home的".active"
类声明为home。我希望在此文件中使用它,因此我可以在所有文件中使用相同的通用mainmenu.js和mainmenu.html。这些都在
index.html
的头中声明。我的问题是它加载
jQuery.js
加载,然后立即触发index.html的javascript。我不知道如何声明将#home
按钮设置为".active"
的功能,我可以将其声明为文档级别吗?我知道我不应该让它成为全球性的……但是我不知道该怎么做?我目前正在这样做:
defineactive(){
$(mmlist).find("#home").addClass("active");
}
但是,尚未定义
mmlist
。该声明在mainmenu.js
中声明,该文件在index.html之后加载所以我想我的问题是我可以声明一个可以在
jQuery.js
之外调用的函数吗?如果没有,除了使用外部源/应用程序外,如何确保按顺序加载javascript文件?我计划以后以更复杂的方式使用这个想法,所以我需要这个工作。
最佳答案
尝试将代码包装为:
$(document).ready(function(){
// ... Your code ...
});
因此它将在页面加载时运行。