我的jquery代码是分割文件分为2个文件。
在其中一个文件中,我定义了一个函数
function something(input){
//does something
}
调用此函数仅在调用者行位于同一文件中时才有效。但我需要从两个文件中调用它。
如果我将功能切换到第二个文件,我再次遇到同样的问题。同一文件中的代码可以读取它,但不能读取其他文件中的代码。
答案 0 :(得分:10)
将您的函数置于$(document).ready(function() { });
之外,以赋予它们全局范围。放在其中的任何东西都无法从外面访问。
然后,您可以考虑使用命名空间来封装您的函数。这有助于避免全局命名空间的混乱。
答案 1 :(得分:6)
您需要创建一个名称空间对象,它在您的文件之间共享。
<强> fileA.js 强>
window.mynamespace = window.mynamespace || {};
mynamespace.something = function(input) {
// do something
};
<强> fileB.js 强>
window.mynamespace = window.mynamespace || {};
mynamespace.something();