Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
 Аватар для Mailo
178 / 226 / 31
Регистрация: 18.02.2010
Сообщений: 2,313

Как скопировать всё содержимое тега (включая другие теги и их содержимое) и вставить внутрь другого тега

30.06.2018, 19:46. Показов 4677. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пробовал .clone
JavaScript
1
$(".la_desktop").clone().appendTo(".la_mobile");
HTML:



HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<div class="l_articles la_desktop">
        <span class="c_head">Статьи</span>
        <div class="la_item">
            <a href="">ИНТЕНСИВНАЯ ТЕХНОЛОГИЯ ВЫРАЩИВАНИЯ КАПУСТЫ БЕЛОКОЧАННОЙ И
КРАСНОКОЧАННОЙ</a>
            <img src="images/art_1.jpg" alt="">
            <span>По своей сути рыбатекст является альтернативой традиционному lorem ipsum, который вызывает у некторых людей недоумение при попытках прочитать рыбу текст. </span>
        </div>
        <div class="la_item">
            <a href="">Болезни огурцов, кабачков, арбузов и 
других тыквенных.</a>
            <img src="images/art_2.jpg" alt="">
            <span>По своей сути рыбатекст является альтернативой традиционному lorem ipsum, который вызывает у некторых людей недоумение при попытках прочитать рыбу текст. </span>
        </div>
    </div>
 
...........
 
 
 
<div class="la_mobile"></div>



Но эта зараза всё обрабатывает в реальном времени + копирует ни только теги и их содержимое, но ещё и их свойства. И когда у меня на брекпойнте происходит вот такой фокус:

CSS
1
2
3
4
5
6
7
8
9
10
@media only screen and (max-width : 900px){
.la_desktop{
    display: none;
}
.la_mobile{
    display: block;
}
 
 
}
То .la_mobile тоже всё затирается, т.к. я понял клонирование уже происходит с пустоты. А мне надо при загрузке документа один раз скопировать содержимое, и всё, причём в случае с мобильными устройствами .la_desktop уже будет скрыт, но из него надо всё скопировать и поместить в .la_mobile что бы всё там уже лежало.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.06.2018, 19:46
Ответы с готовыми решениями:

Как узнать содержимое указанного тега?
Как сделать подобное в коде ниже, только работающий вариант? var p = document.getElementsByTagName(&quot;p&quot;); ...

Как изменить содержимое тега через объектную модель документа?
Надо с помощью javascript изменить содержимое произвольного тэга: Пример: &lt;tag&gt;содержимое&lt;/tag&gt;, где имя tag - произвольно. ...

Смогу ли я получить доступ к переменной данного тега из другого тега script?
если я в одном теге script объявлю переменную с именем mymap,то смогу ли я получить доступ к этой переменной из другого тега script. ...

6
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
30.06.2018, 20:13
Лучший ответ Сообщение было отмечено Thisman как решение

Решение

Если почитать оф. документацию, то можно понять, что метод clone копирует не содержимое тега, а сам тег вместе с его внутренностями, поэтому в итоге после клонирования у вас получается:

HTML5
1
2
3
<div class='la_mobile'>
   <div class='la_desktop'>...</div>
</div>
В вашем случае можно клонировать объект, менять ему класс на нужный и вставлять в контейнер, где уже находился .la_desktop

JavaScript
1
2
3
4
5
const container = document.body; // или ваш собственный тэг
$(".la_desktop").clone()
    .appendTo(container)
    .removeClass('la_desktop')
    .addClass('la_mobile');

Пример в фидле


Замечу, что это очень долгая и дорогая операция ( особенно, если у вас в la_desktop лежит целый сайт ). Зачем вам такие ухищрения, возможно вашу задачу можно решить более оптимизированным путем
1
 Аватар для Mailo
178 / 226 / 31
Регистрация: 18.02.2010
Сообщений: 2,313
30.06.2018, 20:58  [ТС]
la_desktop это часть боковой панели статей, контент которой у "Васи дизайнера" в мобильной версии перемещается из левого блока в конец основного контента, т.е. по коду перепрыгивая весь контентный блок и вообще перепрыгивая в другой контейнер. На css кроме как позиционированием + нижним падингом статьи туда не зафигачишь, а фигачить позиционированием нельзя т.к. высота статей динамическая (могут новые статьи добавляться). Сделал короче по тупому через ".appendTo", вроде работает, уж насколько сейчас это напряжная операция сказать сложно.

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 <div class="la_desktop">
    <div class="l_articles">
        <span class="c_head">Статьи</span>
        <div class="la_item">
            <a href="">ИНТЕНСИВНАЯ ТЕХНОЛОГИЯ ВЫРАЩИВАНИЯ КАПУСТЫ БЕЛОКОЧАННОЙ И
КРАСНОКОЧАННОЙ</a>
            <img src="images/art_1.jpg" alt="">
            <span>По своей сути рыбатекст является альтернативой традиционному lorem ipsum, который вызывает у некторых людей недоумение при попытках прочитать рыбу текст. </span>
        </div>
        <div class="la_item">
            <a href="">Болезни огурцов, кабачков, арбузов и 
других тыквенных.</a>
            <img src="images/art_2.jpg" alt="">
            <span>По своей сути рыбатекст является альтернативой традиционному lorem ipsum, который вызывает у некторых людей недоумение при попытках прочитать рыбу текст. </span>
        </div>
    </div>
</div>
HTML5
1
<div class="la_mobile"></div>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//articles mobile migrate (900px)
function checkWinWidth(hq) {
    if (hq.matches) {
        $(window).scroll(function() {
            $(".l_articles").appendTo(".la_mobile");
        }).scroll();
 
    } else {
 
        $(window).scroll(function() {
                $(".l_articles").appendTo(".la_desktop");
        }).scroll();
    }
}
var hq = window.matchMedia("(max-width: 900px)");
hq.addListener(checkWinWidth);
checkWinWidth(hq);
0
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
30.06.2018, 21:51
Цитата Сообщение от Mailo Посмотреть сообщение
la_desktop это часть боковой панели статей, контент которой у "Васи дизайнера" в мобильной версии перемещается из левого блока в конец основного контента,
Можно попробовать поэкспериментировать с display:flex

HTML5
1
2
3
4
  <div class='container'>
    <div class='content'></div>
    <div class='sidebar'></div>
  </div>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
.container {
  display: flex;
  flex-direction: row-reverse;
  width: 100%;
}
 
.content {
  width: 80%;
  height: 500px;
  background: #333;
}
 
.sidebar {
  width: 20%;
  background: red;
  height: 500px;
}
 
@media only screen and (max-width : 900px){
  .container{
      display: block;
  }
  
  .sidebar {
    width: 100%;
  }
}
0
 Аватар для Mailo
178 / 226 / 31
Регистрация: 18.02.2010
Сообщений: 2,313
30.06.2018, 22:34  [ТС]
Ага знаю что там с ордером очень всё просто можно оформить, но меня этот флекс бесит куча свойств прописывать и ещё для всех браузеров префиксы кросбраузерности, бумажный лист на тег. Потому не использую эту технологию.
0
30.06.2018, 23:39

Не по теме:

Цитата Сообщение от Mailo Посмотреть сообщение
куча свойств прописывать
Во flexbox-e их там всего около десятка.
Цитата Сообщение от Mailo Посмотреть сообщение
для всех браузеров префиксы
Вы серьёзно прописываете вендорные префиксы вручную? Есть масса вариантов, когда про такую рутинную работу можно навсегда забыть. Зачем же себя так мучить?
Цитата Сообщение от Mailo Посмотреть сообщение
Потому не использую эту технологию.
Поверьте, что когда втянетесь, то будет крайне сложно не использовать. Не отставайте, ведь сегодня уже начинают в полный рост Grid Layout юзать, а вы еще с предыдущими фишками не успели разобраться. ;D

0
01.07.2018, 01:15  [ТС]

Не по теме:

Да я уже втянулся, спектр решения задач крайне узок во флексе, автоматика до сих пор не не слышала про свойство display: -ms-flexbox; в отличии от ни таких уж и старых ослов, в общем хороший инструмент для изучения гугла. Вот ща уже новый делают... ждём новый багвэйв, никтож не сделает к примеру order для float или там архисложную задачу, убрать у display-block отступы, чтолб на глаз марджини не обрезать, не давайте нам Grid Layout. Хотя если он утопит бутстрап я его первым изучу и на смартгрид забтю.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.07.2018, 01:15
Помогаю со студенческими работами здесь

Определить содержимое XML тега
сервер присылает ответ в виде XML. Нужно определить текст в XML теге, например из &lt;title&gt;123456&lt;/title&gt; нужно извлечь 123456. ...

Передать содержимое тега в переменную
Каким образом передать в переменную содержимое &lt;p id=&quot;theone&quot;&gt;Содержимое&lt;/p&gt;

При выборе из выпадающего меню одного из вариантов, в определенном месте меняется содержимое тега <p>
Доброго времени суток! Есть такая задача: при выборе из выпадающего меню одного из вариантов, в определенном месте меняется содержимое...

Как вставить внутрь тега?
Добрый день! Хочу вставить скрипт в конец тега head используя юзерскрипт для Tamper monkey FF. Подскажите синтаксис JavaScript, вчера...

Содержимое тега из строки
делаю аякс запрос. в ответ приходи html. Как теперь из полученного html получить содержимое определенных тегов? т.е. получаю ответ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru