所以为了保持井井有条,我有几个javascript文件,即使它们全部(最终)被缩小在一起形成一个最终的javascript文件.
每个文件的内容都包含在:
$(document).ready(function(){
//some javascript here
});
Run Code Online (Sandbox Code Playgroud)
好像我把东西放在单独的文件中(在那些代码之间),它们彼此无法访问.这是范围问题吗?我能做什么?
例如,在一个文件中,我有一堆代码来根据通过ajax接收的数据创建表.但是,该文件的一半只是模板,用于显示数据,具体取决于它的类型等.我想将模板放在他们自己的文件中.
我知道这只是一个"偏好"问题,我可以把它全部放在一个文件中.
但我希望从中学到这一点,甚至可以让它成为"我的"方式.
Ada*_*sek 28
Javascript使用功能范围,因此函数内部的局部变量对外部不可见.这就是您的代码无法访问其他范围的代码的原因.
理想的解决方案是创建一个命名空间.
var NS = {};
(function(){
function privateFunction() { ... }
NS.publicFunction = function(){ ... }
})();
$(document).ready(function(){
NS.publicFunction();
});
Run Code Online (Sandbox Code Playgroud)
这也是一个有用的模式,因为它允许您区分私有和公共元素.
| 归档时间: |
|
| 查看次数: |
10953 次 |
| 最近记录: |