如何从另一个JS文件中调用jQuery函数
How To Call jQuery Function From Another JS File
我有以下main.js
$(document).ready(function() {
$.getScript('another.js', function() {
another();
});
});
…及以下another.js
$(function another() {
$('section#my-section').after('<a href="#">my link</a>');
});
目录结构如下:
+ my.html
+ js
+--- main.js
+--- another.js
another()
永远不会被调用。为什么?谁能给我指个正确的方向?
谢谢!
使用函数表达式定义了another
,并将其传递给$()
。
你需要把它设为全局
既然你是调用它之后,你包括它,你大概不需要把它传递给$()
,所以只是摆脱包装它,它将是一个函数声明(和一个全局)。
有几点需要考虑:
首先,你不能在main.js中调用another(),因为它被包装在$()中,并且在全局作用域中不可用。所以你需要删除another();
那么你在another.js
中的代码就会变成
function another() {
$('section#my-section').after('<a href="#">my link</a>');
}
然后,如果你在本地使用chrome浏览器进行测试,它可能无法工作。
因为 chrome
不支持本地ajax调用,它会给XMLHttpRequest cannot load
无论如何,在firefox
和其他浏览器将工作良好。
你只需要在jquery
之后加载main.js
我已经用firefox在我的本地测试了你的代码,它工作得很好。
相关文章:
- 如何在视图模型contet更新更新上调用Jquery函数
- 如何在 html 页面中调用 jquery
- 仅在小型设备上调用jQuery函数
- 未调用jquery异步函数
- 有没有一种方法可以用步骤递归调用jQuery animate()
- 调用JQuery弹出关闭按钮上的JS'X'
- 在条件内部调用JQuery函数
- ajax外部url加载完成后调用jquery函数
- 如何在几个jQuery对象上调用jQuery函数
- 在发布后调用jQuery Get
- 如何从ajax调用JQuery返回数据
- 从 document.ready 调用 jQuery 插件抛出 getPreventDefault 错误
- 从上下文中调用 JQuery 函数
- 每次调用 jQuery 函数时递增变量
- 使用 Ajax 在 html 加载后调用 jquery 插件
- 在单击按钮时调用 jquery 函数时出现问题
- 多次调用 Jquery 事件
- 从 PHP 获取当前页面 ID 后调用 jQuery 事件
- 从全局范围调用 jQuery 中的函数
- 在隐藏值上调用 jQuery .trigger('change') 会破坏与 KNOCKOUT 相关的可观察性