0

選択した要素のテキスト選択を無効にするカスタム関数があります。カスタム関数は次のように構成されています。

$.fn.DisableTextSelect = function() {
  return this.each(function() {
    // do things to 'this' element
    // ...
  });
};

たとえば、次のように呼びます。

$("label").DisableTextSelect();

問題は、操作する要素がない場合、何もしないのではなく、エラーがスローされ、Firebug が$("label") is null上記の行を指しているように表示されることです。

ここに画像の説明を入力

関数の書き方が間違っていませんか? 要素が見つからない場合は、単純に戻ると思いました。すなわち。each() ループを実行しないでください。

4

1 に答える 1

0

開発者の 1 人がコードを分離したが、jQuery オブジェクトを渡さなかったことが判明しました。

これ

(function() {
  lots of code...
})();

これである必要があります:

(function($) {
  lots of code...
})(jQuery);

返信ありがとうございます!

于 2012-10-23T15:01:11.197 に答える