Все ссылки начинаются с наивысшего объекта, window (окно браузера), и идут по нисходящей. Окна и рамки (frames) принадлежат объекту window. На них не нужно ссылаться, если только их не больше одного. Top, self, parent и frames — "встроенные" имена для окон. Не придавайте им большого значения, просто знайте, что они существуют.
Вот несколько примеров. Обратите внимание на иерархию.
document.mypic.src = "pic1.gif"в самом начале window не требуется. Предполагается, что это все и так находится внутри окна. Команда document.mypic.src указывает на изображение с именем mypic, и изменяет его содержимое на "pic1.gif". В данном случае document (документ) — это страница на которой находится элемент, mypic — имя элемента, а SRC — источник элемента ("pic1.gif").
document.write(location.href)write() — это метод объекта document. Location.href содержит полный URL окна. Обратите внимание, что location и dосument находятся на одном уровне. Это значит, что вы получаете адрес документа того же уровня.
Разбор иерархии объектов
· Window
o Parent
o Self
§ Location
§ Href
§ Document
§ Image
§ Src
§ Form
§ Text
§ Submit
§ Checkbox
o Top
o Frames
· Самая большая путаница в том, что некоторые объекты также являются и свойствами.
· Window — только объект.
· Document является свойством окна, но в свою очередь и объектом.
· Form — это свойство документа, но также и объект со своими свойствами!
· Value (значение) и SRC (источник) — только свойства!
· Здесь представлены не все объекты и свойства. Однако этого достаточно, чтобы понять концепцию в целом... Все ссылки начинаются сверху от window и идут по нисходящей. То есть, нельзя написать document.mytext.myform или mypic.src.document. Это неправильный порядок, следует писать слева направо от более общего к более конкретному.
· Важное замечание: чтобы показать содержимое поля формы, необходимо использовать свойство value (значение), например, document.myform.mytext.value! Если написать просто document.myform.mytext, то будет получена информация о поле формы, но не о его содержании!
Считайте value ("значение") некоторым показателем того, что нечто имеется или отсутствует в определенное время. Поле с флажком может иметь значение "on" или "off", в зависимости от того, задан он или нет. Текстовое поле может иметь значение "hidden" (скрытое), если вы не хотите, чтобы пользователь его видел. Текстовое поле, как указано выше, может содержать какую-то запись. Она будет значением этого поля.
Задание
Напишите полные ссылки, начиная с Window, даже если это не требуется. Обратие внимание, что изображения имеет имя mypic, а форма — myform.
1. Ссылка на всю форму:
2. Ссылка на содержимое поля lname:
3. Ссылка на содержимое поля fname:
4. Замените изображение на "marigold.gif":
Ответы
1. window.document.myform
2. window.document.myform.lname.value
3. window.document.myform.fname.value
4. window.document.mypic.src=marigold.gif
9. Урок: Создание функций
Функции в JavaScript. Их создание и использование.
Концепция
При создании переменной результату команды или события JavaScript присваивается имя. При создании функции делают почти то же самое, только имя присваивается целой серии команд. Множество команд JavaScript объединяются в одну.
Сценарий
Сценарий состоит фактически из двух частей: собственно функции и команды onLoad, которая запускает функцию в работу.
Вот обе части:
<SCRIPT LANGUAGE="javascript"> <!-- Скрыть от браузеров, не поддерживающих JavaScript function dateinbar(){var d = new Date();var y = d.getFullYear(); var da = d.getDate(); var m = d.getMonth() + 1; var t = da + '/' + m + '/' + y; defaultStatus = "Вы прибыли на страницу " + t + ".";}// не скрывать --> </SCRIPT>...и команда onLoad в <BODY>:
<BODY BGCOLOR="хххххх" onLoad="dateinbar()">