2012-04-11 74 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(); 
});