@s2sk

Сдвиг текста на один блок вперед?

Привет.

Нужно сдвинуть все элементы в на один вперед. Пока у меня что-то не очень получается.

Есть что то типа такого
<div id_str="1">1111111</div>
<div id_str="2">2222222</div>
<div id_str="3">3333333</div>
<div id_str="4">4444444</div>
<div id_str="5"></div> <!-- пусто -->


А нужно чтобы 5 заполнилась 4, 4 заполнилась 3 и т.д.

<div id_str="1"></div> <!-- стало пусто-->
<div id_str="2">1111111</div>
<div id_str="3">2222222</div>
<div id_str="4">3333333</div>
<div id_str="5">4444444</div>


Сделал что-то на подобии.

for(var i = 0; i <= 5; i++)
                	{
                        next_str = $("div[id_str=" + i + "]").text(); 

                        if(!i)
                		  $("div[id_str=" + i + "]").text("");
                        else
                           $("div[id_str=" + i + "]").text(next_str); 
                	}


Но получается что если я записываю в следующую строку предыдущую строку, то я теряю значение этой строки и все дальше забивается только значением 2 строки. Нужно получается записывать значение следующей строки, но у меня что-то не особо вышло это в реализации. Можно конечно записывать все строки сразу, а потом тупо их сдвигать, но если там 1к строк?
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ответы на вопрос 1
prodavecmacdonalds
@prodavecmacdonalds
коммуницирую
<div class="wrap">
  <div id_str="1">1111111</div>
  <div id_str="2">2222222</div>
  <div id_str="3">3333333</div>
  <div id_str="4">4444444</div>
  <div id_str="5"></div>
</div>


var indexEl = 0;
$('div').each(function() {
  indexEl++;
  $(this).text($('div').index(indexEl).text);
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы