Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
JavaScript. DOM.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
81.92 Кб
Скачать

Доступ к элементам по id

Самый удобный способ найти элемент в DOM - это получить его по id. Для этого используется вызов document.getElementById(id)

Пример 2. Данный код изменит цвет текста на голубой в div'е c id="data"

document.getElementById('data').style.color = 'blue';

Доступ к элементам по тегу

Возможно получить все элементы с определенным тегом, и среди них искать нужный. Для этого служит document.getElementsByTagName(tag). Она возвращает массив из элементов, имеющих такой тег.

Например, можно получить второй элемент(нумерация в массиве идет с нуля) с тэгом li: document.getElementsByTagName('LI')[1];

Следующий вызов получает список элементов LI, находящихся внутри первого тега DIV:

document.getElementsByTagName('DIV')[0].getElementsByTagName('LI')

Свойства (атрибуты) элементов

У DOM-элементов есть масса свойств. Некоторые из них можно читать и устанавливать, другие - только читать.

tagName

Атрибут есть у элементов-тегов и содержит имя тега в верхнем регистре, только для чтения.

style

Это свойство управляет стилем. Оно аналогично установке стиля в CSS.

Пример 3. Изменение ширины кнопки (element.style.width).

<input type="button" style="width: 300px"

onclick="this.style.width = parseInt(this.style.width)-10+'px'"

value="Укоротить"/>

Замечание. Если CSS-атрибут имеет дефисы, то для установки style нужно заменить их на верхний регистр букв.

className

Это свойство задает класс элемента. Оно полностью аналогично html-атрибуту "class". Например, elem.className = 'news'.

innerHTML

Это свойство содержит весь HTML-код внутри узла, и его можно менять. Свойство innerHTML применяется, в основном, для динамического изменения содержания страницы.

Пример 4.

<div id="news">Самая новая новость</div>

<script>

news_div = document.getElementById('news');

alert(news_div.innerHTML);

</script>

Атрибуты можно добавлять, удалять и изменять. Для этого есть специальные методы:

setAttribute(name, value) Устанавливает значение атрибута

getAttribute(name) Получает значение атрибута

hasAttribute(name) Проверяет, есть ли такой атрибут

removeAttribute(name) Удаляет атрибут

Пример 5.

<html>

<head>

<script language="JavaScript">

function summarize()

{

var s=0;

for(i=1;i<15;i++) {

var elem=document.getElementById("n"+i);

if(elem.checked) {

s += parseInt(elem.value);

}

}

document.getElementById("itogo").innerHTML = "На этой неделе вы съели как минимум <b>" + s + "</b> вкусных вещей!";

}

</script>

</head>

<body>

<form name="foodForm">

<p>На этой неделе вы съели конфет:</p>

<input type="radio" name="sweets" id="n1" value="1">1</input>

<input type="radio" name="sweets" id="n2" value="2">2</input>

<input type="radio" name="sweets" id="n3" value="3">3</input>

<input type="radio" name="sweets" id="n4" value="4">4</input>

<input type="radio" name="sweets" id="n5" value="5">5</input><br><br>

<p>Еще вы ели:</p>

<input type="checkbox" id="n6" value="1">пирожок</input><br>

<input type="checkbox" id="n7" value="1">печеньку</input><br>

<input type="checkbox" id="n8" value="1">яблочко</input><br>

<input type="checkbox" id="n9" value="1">еще печеньку</input><br>

<input type="checkbox" id="n10" value="1">еще пирожок</input><br><br>

<p>И, конечно, же, перекусывали:</p>

<input type="checkbox" id="n11"value="1">шоколадкой</input>

<input type="checkbox" id="n12"value="1">мармеладкой</input>

<input type="checkbox" id="n13" value="1">пончиком</input>

<input type="checkbox" id="n14" value="1">мандаринкой</input>

<input type="checkbox" id="n15" value="0">уже объелся</input><br><br>

<input type="button" onclick="summarize();" value="И что же?">

<p id="itogo"></p>

</form>

</body>

</html>

11

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]