Главная->Уроки по js->Как получить доступ к любому объекту HTML через JavaScript

Как получить доступ к любому объекту HTML через JavaScript

03 Мая в 00:00

До сих пор мы получали доступ к вполне определённому объекту. Однако, бывает нужно получить доступ к абсолютно любому объекту (порой, заранее неизвестному) HTML. Вот как раз об этом и написана эта небольшая статья. Для доступа к любому объекту HTML в JavaScript существует свойство у объекта Document, которое называется all. Это свойство является массивом. Сейчас я Вам предлагаю найти какую-нибудь HTML-страничку и вставить туда следующий скрипт: document.write(document.all.length); Будьте внимательны: данный скрипт должен вызываться в конце страницы! Надеюсь, Вы помните правило: пока объект не существует - с ним нельзя работать. Поэтому прежде, чем работать с HTML-объектами, необходимо, чтобы они сначала появились. Теперь давайте выведем все объекты, которые имеются на странице. Так как свойство all - это массив, то обращаться с ним надо, как с массивом: var str = ""; for (i = 0; i < document.all.length; i++) str += document.all[i] + "<br />"; document.write(str); Здесь мы получаем все объекты на странице и записываем их в переменную str. После того, как цикл пройден, мы выводим эту переменную. Теперь давайте решим простую задачу. Давайте изменим значения всех элементов p (абзац) на слово "JavaScript". Пишем такой скрипт: for (i = 0; i < document.all.length; i++) { var obj = document.all[i]; if (obj instanceof HTMLParagraphElement) obj.innerHTML = "JavaScript"; } Теперь обсудим данный скрипт. Вначале обычный цикл, потом мы переменной obj присваиваем текущий объект HTML-страницы, находящийся в массиве all. Дальше с помощью оператора instanceof мы проверяем принадлежность этого объекта к классу HTMLParagraphElement. И если этот объект является элементов p, то с помощью свойства innerHTML меняем значение внутри тега <p> на "JavaScript". Вот такой незамысловатый скрипт. До скорых встреч!