1

これは本当に簡単な質問ですが、インターネットで検索する方法がわかりません。

私は次のように見える必要がある空を持って<div id="wrap"></div>います:

<div id="wrap>
    <div class="container">
        <div class="apples"></div>
    </div>
    <div class="container">
        <div class="banana"></div>
    </div>
    <div class="container">
        <div class="orange"></div>
    </div>
    <div class="container">
        <div class="grapes"></div>
    </div>
</div>

jqueryで私は持っています:

$(#wrap).html(''); // need this bit
var fruitArray = ['apples','banana','orange','grapes'];
for (fruit in fruitArray) {
    $('<div class="'+fruitArray[fruit]+'"></div>').appendTo('#wrap').doSomething(); 
}

何かを行うにはfruitArrayクラスのdivが必要なので、containerクラスでラップすることはできません。

$('<div class="container"><div class="'+fruitArray[fruit]+'"></div></div>').appendTo...

この状況でコンテナクラスを生成するにはどうすればよいですか?

4

3 に答える 3

1

.wrapメソッドは、連鎖の目的で元の要素のセットを返します。

$('<div class="'+fruitArray[fruit]+'" />')
.appendTo('#wrap')
.wrap('<div class="container" />')
.doSomething(); 
于 2012-05-22T09:42:17.980 に答える
0
var fruitArray = ['apples','banana','orange','grapes'];
for (fruit in fruitArray) {
    $('<div class="'+fruitArray[fruit]+'" />').wrap('<div class="container" />').appendTo('#wrap').doSomething();
}

またはあなたもそれをすることができます

var fruitArray = ['apples','banana','orange','grapes'];
for (fruit in fruitArray) {
    $('<div class="'+fruitArray[fruit]+'" />').appendTo('#wrap').doSomething().wrap('<div class="container" />');
// this will work if the doSomething is a jquery/plugin method that is using chaining (usually they do)
}
于 2012-05-22T09:46:54.650 に答える
0

これを試して:

var fruitArray = ['apples','banana','orange','grapes'];
for (fruit in fruitArray) {
    $('<div class="' + fruitArray[fruit] + '"></div>').appendTo('#wrap').wrap('<div class="container"></div>');
}

フィドルの例

于 2012-05-22T09:42:38.353 に答える