1

選択した要素の各子の幅配列を作成したいと思います。私は試した :

var width = $(element).children().map(function () { return this.style.width; }); 

しかし、これは機能していません。次にalert(width[0])、幅を表示する代わりに、を表示しますobjectHtmlElement。私が間違っていることは何ですか?

4

4 に答える 4

3

.width()インラインスタイルを設定した場合にのみ、styleプロパティが機能するようにしてください。

var widths = $(element).children().map(function () { return $(this).width(); }); 
于 2012-10-18T07:35:41.870 に答える
3

基本配列を取得する場合は、getメソッドを呼び出す必要があります。mapメソッドはjQueryでラップされた配列を返します。

戻り値はjQueryでラップされた配列であるため、返されたオブジェクトをget()して、基本的な配列で機能させるのが非常に一般的です。

var widths = $(element).children().map(function() {
     return this.style.width; 
}).get(); 
于 2012-10-18T07:36:29.387 に答える
1
var obj = $('li');
var arr = $.makeArray(obj);

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

(typeof obj === 'object' && obj.jquery) === true;
jQuery.isArray(arr) === true;
于 2012-10-18T07:37:30.840 に答える
0

マップの後にjquerywidth()とget()を使用します。

var widths = $(element).children().map(function() {
     return $(this).width(); 
}).get(); 
于 2012-10-18T07:38:54.707 に答える