0

jQueryを利用する呼び出し可能な関数を書くつもりです。しかし、jQuery を使用した通常の関数宣言への参照が見つかりません。要素操作関数がすべてです。基本的に、通常の JavaScript 関数を宣言してから jQuery を使用できますか、それとも特別なことをする必要がありますか? これでいいですか?

function useJQ(xml)
{
    var groups = {};
    $('resultGroups', $(xml)).each(function() {
    var count = $('results', this).length;
    var name = $('name',this).text();
    groups[name] = count;
}
4

3 に答える 3

4

このようなタスクを実行するために jQuery を拡張する必要はありません。プレーン関数を使用して、必要なことを実行できます。独自の名前空間を設定してグローバル名前空間を汚染しないようにしてください。

ただし、独自の名前空間ではなく jQuery 名前空間を使用したいだけの場合は、次の方法で簡単に追加できます。

$.fn.functionName = function(){
   //do what your function does
   //"this" in here is the jQuery object you preceded the function
   //to allow chaining, you must return a jQuery object
};

効果は次のようになります。

$(selector).functionName()
于 2012-04-29T05:38:42.753 に答える
1

jQuery は単なるヘルパー関数の集まりです。関数の定義方法には影響しません。したがって、現在のコードは正常に機能します。

于 2012-04-29T05:35:33.683 に答える
0

jQuery は、JavaScript コードを構造化するためのものではありません。そのため、Javascript エンクロージャー、オブジェクト、およびプロトタイプを使用する必要があります。Javascript コードを構造化する多くの提案された方法があります。

また、 jQuery プラグイン オーサリングの定義を調べて、コードをより整理しておくのに役立てることもできます。

于 2012-04-29T05:40:04.823 に答える