0

jqueryでプラグインを作成しています。彼らがドキュメントで言うように、これは jquery オブジェクトを参照します。.each()そのため、プラグイン コンストラクターで取得した数のオブジェクトを実行して返すことができます。ただし、このプラグインはスカラー値を返すため、最初のオブジェクトにしか作用できません。

オブジェクトのjquery可能な配列から最初の要素を取得したい場合、最良のアプローチは何だと思いますか?

$.fn.totalWidth = function(element){
    $this = $(this.get(0)); //option 1
    //OR
    $this = this.first(); //option 2
});

あなたの視点に感謝します。

4

2 に答える 2

1

plugins スコープ内で、

this.first()

また

this.eq(0)

thisプラグインで jQuery オブジェクトを参照し、再度ラップする必要がないため、最初の要素を取得する最良の方法です。再ラップするためだけにネイティブ要素を取得するために使用.get()するのは不必要に思えます。

于 2013-05-20T20:57:21.073 に答える
1

$this = $(this.get(0)); クエリに一致する dom 要素を取得します。first() は jquery オブジェクトを取得します。

結果のオブジェクトに対して jquery 操作を実行する場合は、オプション 2 に進みます。純粋な JavaScript DOM オブジェクトが必要な場合は、オプション 1 に進みます。

于 2013-05-20T20:57:35.480 に答える