«Единственный способ творить великие дела – это любить то, что ты делаешь»
JavaScript
site.komp36.ru Создание сайтов. Твой сайт фотографа Что есть на сайте? Несколько фото галерей: свадебная, постановочная съемка, love story, детские фото. Договор на фотосъемку, прайс-лист.
site.komp36.ru Продающий лендинг «Установка и продажа окон» Установка и продажа окон, установка дверей, перегородок. Одностраничный продающий сайт. Заявки прямо с сайта
site.komp36.ru Универсальный лендинг. Любая тема сайта - 4900 руб. Лендинг адаптируется под любую тему: ремонт, отделка, продажа окон, дверей, лестниц, мебели и многое другое
site.komp36.ru Создание сайтов. Сайт сервисного центра. Сайт компании. Новости и отзывы. Несколько прайс-листов – под каждый отдельная страница. Возможность размещения статей


Игра «Морской Бой» на JavaScript: Простая Игра и Игра для Двоих



Продолжаем перемещаться по иерархической структуре DOM-дерева. Здесь будут рассмотрены свойства nextSibling и previousSibling, которые позволяют обратиться к следующему и предыдущему узлам, расположенных на одном уровне.



Свойство nextSibling - Обращение к следующему узлу

Свойство nextSibling служит для обращения к следующему узлу, расположенному по иерархии на одном уровне с исходным узлом (элементом) веб-документа.

Далее будет продолжена работа с примером из предыдущих заметок, где три тега img являются дочерними элементами тега div.

Фрагмент кода

<div id = "all_penguins">

<img src="img/peng_128.gif" id = "penguin_1" width="128" height="128" title="Крупный пингвин">

<img src="img/peng_64.gif" id = "penguin_2" width="64" height="64" title="Средний пингвин">

<img src="img/peng_32.gif" id = "penguin_3" width="32" height="32" title="Маленький пингвин">

</div>

 

<script type="text/javascript">

var element_start = document.getElementById('penguin_2'); /* возвращаем ссылку на 2-ой тег img, который выбираем по его id */

var element_next = element_start.nextSibling; /* обращаемся к следующему элементу - тегу img и результат заносим в переменную element_next */

document.write(element_next); /* выводим на экран переменную element_next */

</script>

Результат

В результате JavaScript выдал, что следующим узлом является текстовый объект. Хотя в коде мы видим тег img.

Вернемся к одной из прошлых заметок, где была рассмотрена аналогичная ситуация. Дело в том, что между тегами img есть пробелы, которые в DOM-дереве воспринимаются как текстовые узлы, а для JavaScript - это текстовые объекты.

Далее уберем пробелы между тегами img и посмотрим на результат.

Фрагмент кода

<div id = "all_penguins">

<img src="img/peng_128.gif" id = "penguin_1" width="128" height="128" title="Крупный пингвин"><img src="img/peng_64.gif" id = "penguin_2" width="64" height="64" title="Средний пингвин"><img src="img/peng_32.gif" id = "penguin_3" width="32" height="32" title="Маленький пингвин">

</div>

 

<script type="text/javascript">

var element_start = document.getElementById('penguin_2'); /* возвращаем ссылку на 2-ой тег img, который выбираем по его id */

var element_next = element_start.nextSibling; /* обращаемся к следующему элементу - тегу img и результат заносим в переменную element_next */

document.write(element_next); /* выводим на экран переменную element_next */

</script>

Результат

Теперь все правильно: благодаря свойству nextSibling получилось выяснить, что следующим элементом после 2-го тега img является изображение.

Свойство previous - Обращение к предыдущему узлу

Свойство previousSibling служит для обращения к предыдущему узлу, расположенному по иерархии на одном уровне с исходным узлом (элементом) веб-документа.

Фрагмент кода

<div id = "all_penguins">

<img src="img/peng_128.gif" id = "penguin_1" width="128" height="128" title="Крупный пингвин"><img src="img/peng_64.gif" id = "penguin_2" width="64" height="64" title="Средний пингвин"><img src="img/peng_32.gif" id = "penguin_3" width="32" height="32" title="Маленький пингвин">

</div>

 

<script type="text/javascript">

var element_start = document.getElementById('penguin_2'); /* возвращаем ссылку на 2-ой тег img, который выбираем по его id */

var element_previous = element_start.previousSibling; /* обращаемся к предыдущему элементу - тегу img и результат заносим в переменную element_previous */

document.write(element_previous.id); /* выводим на экран id предыдущего тега img */

</script>

Результат

В результате мы получили идентификатор id первого тега img, то есть при помощи свойства previousSibling получили доступ к предыдущему узлу, находящемуся на одном уровне с текущим узлом документа в иерархии дерева DOM.

Читайте также...

site.komp36.ruТвой сайт фотографа. Создание сайтов Что есть на сайте? Несколько фото галерей: свадебная, постановочная съемка, love story, детские фото. Договор на фотосъемку, прайс-лист.
site.komp36.ru Акция Как начать свое дело? Свой сайт «Укладка плитки» 9 000 руб. Лендинг адаптируется под любой вид отделочных работ, продажу товаров или услуг. Сайт поможет найти новых клиентов
site.komp36.ru Акция Продающий лендинг «Установка и продажа окон» 9 000 руб. Одностраничный продающий сайт. Установка и продажа окон, установка дверей, перегородок. Заявки прямо с сайта

Отзывы и комментарии:

Комментариев нет...

Оставить отзыв:

Ваше Имя:

Текст комментария:

Ответьте на вопрос:

Сколько дней в Високосном году?


JavaScript и Web
Тематические публикации
site.komp36.ru Как начать свое дело? Свой сайт «Укладка плитки» 9 000 руб. Лендинг адаптируется под любой вид отделочных работ, продажу товаров или услуг. Сайт поможет найти новых клиентов
site.komp36.ru Продающий лендинг «Установка и продажа окон» 9 000 руб. Одностраничный продающий сайт. Установка и продажа окон, установка дверей, перегородок. Заявки прямо с сайта
Популярные заметки
Последние заметки