@Serqwezxc

Как обернуть каждый элемент в ссылку с помощью JS?

Как обернуть каждый img в ссылку с помощью JS?

<div class="slider__itm">
    <img src="img/works/3.png" alt="">
</div>
<div class="slider__itm">
    <img src="img/works/3.png" alt="">
</div>
<div class="slider__itm">
    <img src="img/works/3.png" alt="">
</div>

const inner = document.querySelectorAll('.slider__itm > img')
const wrapper = document.createElement('a')

for (let i = 0; i > 5; i++) {
    inner.parentNode.insertBefore(wrapper, inner)
    wrapper.appendChild(inner)
}
  • Вопрос задан
  • 236 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
document.querySelectorAll('.slider__itm img').forEach(n => {
  const link = document.createElement('a');
  n.parentNode.append(link);
  link.append(n);
});

или

for (const n of document.querySelectorAll('.slider__itm')) {
  n.innerHTML = `<a>${n.innerHTML}</a>`;
}

или

for (const n of document.getElementsByClassName('slider__itm')) {
  const link = document.createElement('a');
  link.appendChild(n.replaceChild(link, n.children[0]));
}

или

const imgs = document.querySelectorAll('.slider__itm img');

for (let i = 0; i < imgs.length; i++) {
  const link = document.createElement('a');
  imgs[i].replaceWith(link);
  link.insertAdjacentElement('afterbegin', imgs[i]);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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