我开始学习YepNope并有一个类似的脚本:
yepnope([
{
load: 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js',
},
{
test: true,
yep: {
'jquery-ui' : 'js/jquery-ui.js',
'jquery-expandable' : 'js/jquery.expandable.js',
'triggers' : 'js/triggers.js',
'prettify' : 'js/prettify/prettify.js'
},
callback: {
'prettify': function (url, result, key) {
console.log(key + ' loaded ' + result);
prettyPrint();
}
}
}
]);
我只需要回调美化。但是,运行上述操作会将控制台日志显示为已成功加载,但尚未定义prettyPrint()。
如果我为其他键分配空白函数回调,例如:
yepnope([
{
load: 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js',
},
{
test: true,
yep: {
'jquery-ui' : 'js/jquery-ui.js',
'jquery-expandable' : 'js/jquery.expandable.js',
'triggers' : 'js/triggers.js',
'prettify' : 'js/prettify/prettify.js'
},
callback: {
'jquery-ui': function(url, result, key) {
},
'jquery-expandable': function(url, result, key) {
},
'triggers': function (url, result, key) {
},
'prettify': function (url, result, key) {
console.log(key + ' loaded ' + result);
prettyPrint();
}
}
}
]);
这确实有效。因此,当使用这种语法时,我们是否必须为每个回调指定一个键,即使我们不需要特定键的回调?或者这是YepNope中的错误?我也可以在Modernizr.load版本的脚本中重现这一点。