我有大约 8 个 js 文件需要在我网站的每个页面上加载,还有一些其他需要有条件地加载。我的工作正常,我只想确保我尽可能优雅地执行此操作(我怀疑我不是)。
这是我目前正在使用的代码:
yepnope({
load: {
'jquery': '/include/js/libraries/jquery-1.8rc1.js',
'ui': '/include/js/jquery-ui-1.8.16.custom.min.js',
'global': '/include/js/global.js',
'dbObject': '/include/js/dbObject.js',
'dbQuery': '/include/js/dbQuery.js',
'common': '/include/js/common.js',
'credit': '/include/js/credit.js',
'messages': '/include/js/messages.js',
'poller': '/include/js/poller.js',
'ajax_global': '/include/js/ajax_global.js'
},
complete: function (url, res, key) {
yepnope({
test: $('body').hasClass('project'),
yep: {
'project': '/include/js/project.js'
},
callback: function(url, res, key) {
}
});
}
});
load
必须为站点上的每个页面加载该初始对象中的所有内容。然后在complete
我正在测试的函数中查看 body 标记是否具有project
类,如果是,我正在加载我依赖于此页面的其他脚本。
几个问题:
- 这是最好的方法吗?
- 我应该如何为其他页面添加其他测试?我会将嵌套的 yepnope 调用放入数组中并添加更多测试对象吗?
我很感激我能得到的任何帮助。