Скажем, у меня есть три <div>
элемента на странице. Как я могу поменять местами первую и третью <div>
? jQuery в порядке.
javascript
jquery
dom
ядро
источник
источник
var html = $('#container').html(); ...; $('#container').html(html);
Для такой тривиальной задачи нет необходимости использовать библиотеку:
При этом учитывается тот факт, что
getElementsByTagName
возвращается активный NodeList, который автоматически обновляется, чтобы отразить порядок элементов в DOM по мере того, как ими манипулируют.Вы также можете использовать:
и есть различные другие возможные перестановки, если вы хотите поэкспериментировать:
например :-)
источник
.до и после
Используйте современный ванильный JS! Намного лучше / чище, чем раньше. Нет необходимости ссылаться на родителя.
Поддержка браузеров - 94,23% в мире по состоянию на июль 2020 г.
источник
и используйте это так:
если вы не хотите использовать jQuery, вы можете легко адаптировать эту функцию.
источник
Эта функция может показаться странной, но для правильной работы она сильно зависит от стандартов. Фактически, может показаться, что он работает лучше, чем версия jQuery, опубликованная tvanfosson, которая, кажется, выполняет подкачку только дважды.
На какие особенности стандартов он опирается?
источник
Подход Jquery, упомянутый вверху, будет работать. Вы также можете использовать JQuery и CSS. Скажите, например, в Div one вы применили class1 и div2, вы применили класс class2 (скажем, например, каждый класс css предоставляет определенную позицию в браузере), теперь вы можете поменять классы, используя jquery или javascript (который изменит позицию)
источник
Извините за то, что натолкнулся на эту тему. Я наткнулся на проблему "подкачки DOM-элементов" и немного поигрался
Результатом является "родное" jQuery "решение", которое кажется действительно красивым (к сожалению, я не знаю, что происходит внутри jQuery при этом)
Код:
В документации jQuery сказано, что элемент
insertAfter()
перемещается, а не клонируется.источник