1

私の拡張機能で jQuery が正常に動作していないと思われます... バージョン 1.3.2 を使用しており、次の行がロードされています。

var loader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"]
              .getService(Components.interfaces.mozIJSSubScriptLoader);
loader.loadSubScript("chrome://myext/content/lib/jquery.js", myext);

私の問題は、次の行を実行すると、1 としてタグ付けされた行が機能し、2 で jQuery に関連する不可解なエラー「L is null」が発生することです。

jQuery.noConflict();
$ = function(selector,context){ return new jQuery.fn.init(selector,myext.doc); };
$.fn = $.prototype = jQuery.fn;
$().ready(function() {
   $("menuitem#a").attr("label","Value set by jQuery!");             // 1
   $("menupopup#listacorsi").append("<menuitem label='newnode!'/>"); // 2

});

要素 #listacorsi に子ノードを追加するには、2 行目が適切であると想定しました。menuitem#a は #listacorsi の子です。私のコーディングの何が問題なのかを理解するのを手伝ってくれませんか?

よろしくお願いします、

リビオ

4

1 に答える 1

0

次のように$変数を参照する必要があります。

$("body",window.content)

また、Firefox拡張機能でjQueryを使用しましたが、問題なくシームレスに動作します。

于 2010-09-26T20:09:51.437 に答える