Концепция
Уфф! Сделаем паузу и посмотрим, что мы уже знаем. В JavaScript есть объекты, похожие на существительные или предметы. У объектов есть свойства, которые описывают их, как прилагательные описывают существительные. Мы пользуемся схемой oбъект.свойство.
Еще у объектов есть методы, или действия, которые можно к
ним применить. После метода ставятся скобки по схеме
oбъект.мeтoд(). У разных объектов разные свойства и методы.
А
теперь мы узнаем самый большой секрет JavaScript, иерархию
объектов. Как только вы ее поймете, cчитайте, что JavaScript у
вас в кармане!
Что я имею в виду
Действие иерархии объектов
Все команды начинаются с наивысшего объекта, window (окно браузера), и идут по нисходящей. Окна и рамки (frames) принадлежат объекту window. Их не нужно перечислять, если только их не больше одного. Top, self, parent и frames — «встроенные» имена для окон. Много о них не беспокойтесь, просто знайте, что они существуют.
Вот несколько примеров. Обратите внимание на иерархию.
document.pic. src = "pic1.gif" |
window не нужно ставить в самом начале. Предполагается, что это все и так внутри окна. Команда document.pic.src указывает на рисунок, которому дано имя pic. Это понятно? Документ — это страница, pic — имя элемента, а SRC — источник элемента, "pic1.gif". |
document.write(location.href) |
write() — это метод объекта document. Location.href показывает полный URL окна. Обратите внимание, что location и dосument находятся на одном уровне (оба выделены зеленым цветом). Это значит, что вы получаете адрес документа того же уровня. |
Разбор иерархии объектов
Самая большая путаница в том, что некоторые объекты также являются и свойствами. Window — только объект. Document является свойством окна, но в свою очередь и объектом. Form — это свойство документа, но также и объект со своими свойствами! Value (значение) и SRC (источник) — только свойства! Здесь представлены не все объекты и свойства. Однако этого достаточно, чтобы вы поняли концепцию в целом... Все команды начинаются сверху от window и идут по нисходящей. То есть, нельзя написать document.text.form или pic.src.document. Это неправильный порядок, следует писать слева направо от главного к второстепенному. Важно: чтобы показать содержимое поля формы, существует свойство value (значение), например, document.form.text.value. Если вы просто напишете document.form.text, это даст информацию о поле формы, но не о его содержании!Поле с флажком может иметь value "on" или "off". Текстовое поле может иметь value "hidden" (скрытое), если вы не хотите, чтобы пользователь его видел. Ясно?
Ваше задание
Напишите полные команды, начиная с Window, хотя обычно это не требуется. Пускай имя изображения будет mypic, имя формы myform.
-
Форма:
Содержание поля lname (фамилия):
Содержание поля fname (имя):
Измените название картинки на "marigold.gif":