Хороший совет для того, чтобы попытаться сделать то, что вы обычно делаете с jQuery, без jQuery, - посмотреть на источник jQuery .Что они делают?Ну, они захватывают все дочерние элементы, добавляют их в новый узел, а затем добавляют этот узел внутри родительского элемента.
Вот простой маленький метод, позволяющий сделать именно это:
const wrapAll = (target, wrapper = document.createElement('div')) => {
;[ ...target.childNodes ].forEach(child => wrapper.appendChild(child))
target.appendChild(wrapper)
return wrapper
}
И воткак вы используете это:
// wraps everything in a div named 'wrapper'
const wrapper = wrapAll(document.body)
// wraps all the children of #some-list in a new ul tag
const newList = wrapAll(document.getElementById('some-list'), document.createElement('ul'))