Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Многие HTML-контейнеры имеют атрибуты. Как мы уже знаем, каждому контейнеру соответствует объект. При этом соответствии атрибутам отвечают свойства объекта. Соответствие между атрибутами HTML-контейнеров и свойствами DOM -объектов не всегда прямое. Обычно каждому атрибуту отвечает некоторое свойство объекта. Но, во-первых, название этого свойства не всегда легко угадать по названию атрибута, а во-вторых, у объекта могут быть свойства, не имеющие аналогов среди атрибутов. Кроме того, как мы знаем, атрибуты являются регистро-независимыми, как и весь язык HTML, тогда как свойства объектов нужно писать в точно определенном регистре символов.
Например, контейнер якоря <A...>...</A> имеет атрибут HREF, который превращает его в гипертекстовую ссылку:
<A HREF="http://intuit.ru/">intuit</A>Данной гиперссылке соответствует объект (класса URL) - document.links[0], если предполагать, что это первая ссылка в нашем документе. Тогда атрибуту HREF будет соответствовать свойство href этого объекта. К свойству объекта можно обращаться с помощью точечной нотации: объект.свойство. Например, чтобы изменить адрес, на который указывает эта ссылка, мы можем написать:
document.links[0].href='http://ya.ru/';К свойствам можно также обращаться с помощью скобочной нотации: объект['свойство']. В нашем примере:
document.links[0]['href']='http://ya.ru/';У объектов, отвечающих гиперссылкам, есть также свойства, не имеющие аналогов среди атрибутов. Например, свойствоdocument.links[0]. protocol в нашем примере будет равно "http:" и т.д. Полный перечень свойств объектов класса URL Вы найдете в "Программируем гипертекстовые переходы".
Методы
В терминологии JavaScript методы объекта определяют функции, с помощью которых выполняются действия с этим объектом, например, изменение его свойств, отображения их на web-странице, отправка данных на сервер, перезагрузка страницы и т.п.
Например, если у нас есть ссылка <A HREF ="http:// intuit. ru/"> intuit </A> (будем считать, она первая в нашем документе), то у соответствующего ей объекта document.links[0] есть метод click (). Его вызов в любом месте JavaScript-программы равносилен тому, как если бы пользователь кликнул по ссылке, что демонстрирует пример:
При открытии такой страницы пользователь сразу будет перенаправлен на сайт ИНТУИТ. Обратите внимание, что скрипт написан после ссылки. Если бы мы написали его до ссылки, то поскольку в этот момент ссылки (а значит и объекта) еще не существует, браузер выдал бы сообщение об ошибке.
Некоторые методы могут применяться неявно. Для всех объектов определен метод преобразования в строку символов:toString(). Например, при сложении числа и строки число будет преобразовано в строку:
"25"+5 = "25"+(5).toString() = "25"+"5" = "255"Аналогично, если обратиться к объекту window. location (рассматриваемом в следующей лекции) в строковом контексте, скажем, внутри вызова document.write(), то неявно будет выполнено это преобразование, и программист этого не заметит, как если бы он распечатывал не объект, а строку:
<SCRIPT>document.write('Неявное преобразование: ');document.write(window.location);document.write('<BR>Явное преобразование: ');document.write(window.location.toString());</SCRIPT>Тот же эффект можно наблюдать для встроенных объектов типа Date:
<SCRIPT>var d = new Date(); document.write('Неявное преобразование: ');document.write(d);document.write('<BR>Явное преобразование: ');document.write(d.toString());</SCRIPT>Результат исполнения получите сами.
Дата публикования: 2015-01-24; Прочитано: 273 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!