Вход

Просмотр полной версии : обертывание wrap


face2005
10.09.2018, 13:47
Добрый день! подскажите как правильно обернуть?
<div class="itemRow">
<div class="postTitle">text text</div>
<div class="postExcerpt">text text</div>
<div class="more">подробнее</div>
</div>

<div class="itemRow">
<div class="postTitle">text text</div>
<div class="postExcerpt">text text</div>
<div class="more">подробнее</div>
</div>

<div class="itemRow">
<div class="postTitle">text text</div>
<div class="postExcerpt">text text</div>
<div class="more">подробнее</div>
</div>

нужно в блоке itemRow обернуть блоки postTitle и postExcerpt в один div с любым классом...

laimas
10.09.2018, 13:58
А в шаблоне на сервере сделать это один раз не возможно?

Nexus
10.09.2018, 14:03
$('.itemRow').each(function(){
const $wrap=$('<div></div>').addClass('some-class');

$(this).find('.postTitle,.postExcerpt').each(funct ion(){
$wrap.append($(this).clone());
}).remove().end().prepend($wrap);
});

laimas
10.09.2018, 14:04
Nexus, .wrapAll() без цикла явного, но может все таки не загружать клиента?

Nexus
10.09.2018, 14:09
но может все таки не загружать клиента
Не ко мне вопрос )

PS. пример решения с wrapAll можете продемонстрировать?

face2005
10.09.2018, 14:18
Nexus, cпасибо большое!

laimas
10.09.2018, 14:30
пример решения с wrapAll можете продемонстрировать?

Замените в своем коде строки 2-6 на slector.wrapAll('<div/>')

face2005
10.09.2018, 14:39
http://probnik.pp.ua
внизу 4 блока анонсов

laimas
10.09.2018, 14:42
внизу 4 блока анонсов

А JS тут причем? Ну пропишите вы это сразу в шаблоне.

j0hnik
10.09.2018, 14:44
$(".postTitle").each(function(i,el){
$(el).add($(el).next()).wrapAll('<div class="cl"></div>');
});

face2005
10.09.2018, 14:47
мне нужно было обернуть название и текст что бы дать одинаковую высоту...
это composer этот блок выводит и где он там его формирует один черт знает... времени рыться нету..

laimas
10.09.2018, 14:51
это composer этот блок выводит

Это шаблон, и код одного анонса выводится циклом, это по уму так. Захочется сделать 8, не проблема получить данные на восемь, далее все будет автоматом.

Если вы вместо простой операции на сервере начнется мурыжить дизайн на клиенте посредством JS, то это плохо.