2012-04-11 72 views
0
chrome.omnibox.onInputChanged.addListener(function(text, suggestionsCallback){ 
    .... 
    $.get(url_base + text, function(data){ 
     .... 
     suggestionsCallback(suggest_results); 

在我的回调封“suggestionCallback”应用suggestionCallback将不起作用。 但是,如果我把这个回调线以外的封闭线,工作正常。错误在封闭

这是Chrome的缺陷吗?或者,我错过了什么?

+0

我不熟悉的omnibar API,但你可以尝试添加一些的console.log看看发生了什么,或者给我们更多的代码。从字面上看,在问题中放置大量代码是很好的。 我非常怀疑这是Chrome的一个bug – 2012-04-11 07:06:00

回答

0

我没有jquery的知识,只是可怕的细节,所以我不能向你解释为什么它不起作用。但在我的测试中,我发现这样做在没有jQuery的方式工作,所以尝试这样的事情....

chrome.omnibox.onInputChanged.addListener(
function(text, suggest) { 
    var xhr = new XMLHttpRequest(); 
    xhr.open('GET', url_base + text, true); 
    xhr.onload = function(e) { 
     if (this.status == 200) { 
      suggest(suggest_results); 
     } else { 
      //error, not found or something 
      console.debug('Im bugging out man!'); 
     } 
    } 
    xhr.send(); 
});