0

私は Google Closure ライブラリが初めてで、Jquery の $.ajax 関数に似たものをシミュレートしようとしています。これが私が試したことと私が得たものです。

トリガーはChrome拡張機能からです 右クリック

chrome.contextMenus.create({"title": "sample_closure", "onclick": samp.myProject.fun1,"contexts":['selection']});

これにより、以下のように定義された fun1 関数がトリガーされます。

    samp.myProject.fun1 = function(info,tab) {
    var string_url = info.selectionText;
    //String_url works fine and passed to the function below.
    samp.myProject.getAjaxData(string_url);
}

getAjaxData 関数は以下のとおりです。

goog.require("goog.net.XhrIo");

samp.myProject.getAjaxData = function(url) {
   goog.net.XhrIo.send(url, function(event) {
       alert(event.target.getResponseText());
   });
}

しかし、getAjaxData 関数を呼び出すと、このエラーが発生します。

Error in event handler for 'contextMenus': TypeError: Cannot read property 'XhrIo' of undefined

どこが間違っているのか誰にでも教えてもらえますか.. xhrio.send 関数に渡す必要がある引数の型を確認しましたが、文字列型です。

4

1 に答える 1

0

この問題を解決しました。base.js へのパスがこの問題の原因です。

この質問を削除しないでください。同じ問題に直面して去っていく人もいるかもしれません。したがって、この問題を解決するには、closure-library の base.js へのパスを確認してください。

于 2011-06-19T18:29:08.010 に答える