JavaScript Range.selectNode() — діапазон навколо вузла


Метод selectNode() робить діапазон, що охоплює вузол разом із його теґом.

автор: NagarD

Загальний опис

Різниця з selectNodeContents() рівно в одному: selectNode() бере сам елемент, а selectNodeContents() — лише те, що всередині нього.

Це стає видно, щойно спробуєш вирізати діапазон: у першому випадку зникне весь елемент, у другому — лише його начинка, а порожній теґ лишиться.

автор: NagarD

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
selectNode 1+ 1+ 1+ 7+ 12+ 9+
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
selectNode yes yes yes yes

Приклади

+ запропонувати свій приклад у пісочниці

Разом із теґом чи лише вміст — різниця в дії.

HTML

<div id="box"><b>Жирний</b> текст</div>

JS

const box = document.getElementById('box');
const bold = box.querySelector('b');

const withTag = document.createRange();
withTag.selectNode(bold); // разом із <b>

const inside = document.createRange();
inside.selectNodeContents(bold); // лише 'Жирний'

// вирізаємо: у першому разі зникне весь <b>
withTag.deleteContents();
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід