0

localStorageの構文で項目を に設定しています#id, #id+number of times div has been duplcated。この理由は.clone()、ユーザーがクリックする回数だけ div であるボタンがあり、クローンされた div とその回数を localstorage に保存するためです。しかし、私の問題は.clone()、localstorage 項目の数値と同じ回数だけページに戻る方法を考え出すことです。

たとえば、localstorage アイテムが this: の場合、(#one, #one-5)divoneを body に複製する必要が5あります。

これまでの私のコードはここで見ることができます:

http://jsfiddle.net/charlescarver/fLJcs/2/

4

3 に答える 3

3

カウンターである種のループを使用する必要があります。forまたはwhile完全に十分です。

var max = 5;
for (var i=0; i<max; i++) {
    // clone here
}

また

var max = 5;
while(max--) {
    // clone here
}
于 2012-09-10T03:54:49.170 に答える
2

localstorage の 2 番目の項目としてカウントを保持する方が理にかなっているでしょうか?

(#one, 5)

とにかく、ループを使用して n 回 (この場合は 5 回) 反復し、そのたびに要素を追加します。

何かのようなもの

// n is the number of times to clone (n=5 here)
for (var i = 0; i < n; i++) {
    // clone your element
}

要素を複数回複製して複製することも役立つかもしれません。これを抽象化する小さな jQuery プラグイン。

これをlocalstorageにどのように格納しているかはわかりませんが、オブジェクトを文字列化して格納できます。

myobject = {
  'id': 'one',
  'count': 5
}
// Save
localStorage.setItem('myobject', JSON.stringify(myobject));
// Retrieve
var myobject = JSON.parse(localStorage.getItem('myobject'));

myobject.idこれで、 や などの属性を取得できますmyobject.count

于 2012-09-10T03:57:13.193 に答える
0

私はこれをします:

http://jsfiddle.net/LShYs/ .

基本的に、ループを追加するだけです。

for (var i=0; i< parseInt(all[1])-1; i++){
   duplicateDiv("#" + all[0]);
}                

クリック イベントを新しいメソッド (duplicateDiv) に抽出します。このメソッドは、クリック ハンドラーとループから呼び出されます。かなり簡単です。

于 2012-09-10T04:22:48.690 に答える