对于 Mac OSX 10.6.8 中的 Google Chrome 版本 28.0.1500.71,以下 JSFiddle 不适用于我:
$.when(queryYoutube('bob+dylan')).done(function(youtube_response){
console.log('done');
console.log(youtube_response);
});
function queryYoutube(search_string){
var src = "http://gdata.youtube.com/feeds/api/videos?" +
"&v=2" +
"&alt=json" +
"&format=5" +
"&orderby=relevance" +
"&safeSearch=none" +
"&q=" + search_string;
console.log(src);
var getJSON = $.getJSON(src);
return getJSON;
}
我正在使用 $.when().done() 来查询 Youtube Data API v2。JSFiddle 虽然适用于我在 Mountain Lion 的 Chrome 以及 Mac Snow Leopard 上的 Firefox 和 Safari 中。
在其他浏览器中,它在控制台中打印“完成”。虽然我在顶部列出了 Snow Leopard 的 Chrome 版本,但从未打印过“done”,而且似乎从未输入过 .done() 语句。