На главную

Библиотека Интернет Индустрии I2R.ru

Rambler's Top100

Малобюджетные сайты...

Продвижение веб-сайта...

Контент и авторское право...

Забобрить эту страницу! Забобрить! Блог Библиотека Сайтостроительства на toodoo
  Поиск:   
Рассылки для занятых...»
I2R » Сайтостроительство » HTML/DHTML

Основы web-дизайна. Объектная модель документа. Объект Window.

Как было сказано в предыдущем уроке, объект document не является самым старшим в иерархии объектов браузера. В частности, на него можно сослаться следующим образом: window.document, что подразумевает существование объекта старшего уровня window, который соответствует окну браузера. Мы уже использовали этот объект в примере с открытием нового окна методами JavaScript.

Свойства объекта Window

Сведём все основные свойства в таблицу, а потом рассмотрим их подробнее.

frames: Массив всех фреймов данного окна
length: Количество фреймов в родительском окне
name: Имя окна
parent: Имя окна, содержащего набор фреймов: способ сослаться на документ, содержащий frameset, из вложенного в него фрейма
self: Имя текущего окна
status: Текущее сообщение, отображаемое в строке состояния браузера
top: Окно самого верхнего уровня
window: Синоним имени текущего окна

А теперь по пунктам.

Предположим, окно браузера содержит несколько фреймов, имя одного из которых -- navframe. Чтобы сослаться на него из другого фрейма, заключённого в тот же frameset, используется следующий синтаксис (изменим надпись на кнопке внутри одной из форм, содержащихся в этом фрейме):

parent.navframe.document.forms[0].goButton.value="что_то_там";

Главное -- понять, что parent есть родительское окно для всех фреймов, заключённых в один frameset, и оно используется для указания пути в общей иерархии к нужному нам объекту. Следующий важный момент заключается в том, что каждый фрейм, будучи по сути независимым HTML-документом, содержит объект document, после которого дальнейший путь к объекту описывается уже знакомым нам способом.

Далее. Один из примеров использования объекта parent.length может оказаться очень полезным для многих начинающих веб-строителей, пользующихся бесплатным хостингом.

<SCRIPT>
   if (self.parent.frames.length != 0)
            self.parent.location="index.html";
</SCRIPT>

Если страницу, в которую встроен такой скрипт, срабатывающий, скажем, на событие body.onload, пытаться принудительным образом загрузить в frameset (как это делают многие провайдеры бесплатного хостинга), скрипт уничтожит этот frameset, и ваша страница займёт всё доступное место в окне браузера. Правда, никто не гарантирует, что провайдер будет этому рад и не выгонит вас вон.

Осталось совсем немного... объект self используется тогда, когда нужно сослаться на текущее окно, не называя его по имени явно. Объект top позволяет сослаться на окно самого верхнего уровня из фрейма любого уровня вложенности. Объект window, в принципе, означает то же самое, что и self, но иногда эти определения не взаимозаменяемы, о чём у нас с вами ещё будет возможность поговорить.

Наконец объект status позволяет нам вернуть значение строки состояния браузера или записать туда собственное.

top

Методы объекта Window

Перечислю главные:

alert: Вывод диалога с сообщением и кнопкой ОК
close: Закрытие окна
confirm: Вывод диалога с кнопками ОК и Cancel
open: Открытие окна
prompt: Вывод диалога с полем ввода
setTimeout: Установка таймера
clearTimeout: Сброс таймера

Использовать метод alert очень просто: вы пишете в коде

alert("Вы попали на мою веб-страницу");

и получаете диалоговое окно, выглядящее следующим образом:


То, что я привёл именно такой пример, не означает, что вам действительно нужно писать скрипт, который будет приветствовать посетителей подобным образом. В таком случае количество уникальных посетителей страницы всегда будет равняться общему количеству визитов, т. к. в эту воду точно никто не захочет вступать дважды. ;-)

Метод confirm обычно используют примерно так:

if (confirm("Хотите увидеть новые фотографии?"))
 {
  window.location.href="newphotos.htm";
 }
else
 {
  window.location.href="oldphotos.htm";
 }

Диалоговое окно, возникающее в результате работы такого скрипта, показано на картинке ниже.


А вот пример использования метода prompt:

pass=prompt("Cообщение","Строка_ввода_по_умолчанию");

Так переменной pass передаётся значение пароля, возвращаемое диалоговым окном. Само окно показано на рисунке ниже.

Метод close вызывается строкой wndName.close();, где wndName -- имя окна, которое нужно закрыть.

О методе open на этот раз поговорим поподробнее. Один из вариантов записи выглядит так:

wndMyWin = open("имя_HTML-файла","имя_окна",
                "параметры_окна");

Основные параметры приведены в таблице:

toolbar: Если значение параметра равно yes или 1, окно снабжается панелью инструментов, если же значение равно no или 0, панели инструментов не будет.
location: Параметр определяет, будет ли отображаться поле ввода адреса документов
status: Отображение строки состояния
menubar: Отображение линейки меню
scrollbars: Отображение полос прокрутки
resizable: Параметр определяет, можно ли будет изменять размер создаваемого окна
width: Ширина окна в пикселах
height: Высота окна в пикселах

Таким образом, типичный вызов этого метода будет выглядеть примерно так:

wndMyWin = open("имя_HTML-файла","имя_окна",
                "toolbar=no,menubar=no,width=150,height=300");

Значения всех параметров, кроме width и height, определяются так же, как это уже описано в первой строке таблицы.

Теперь о таймерах. Метод setTimeout создаёт и запускает таймер, возвращая его идентификатор.

var command="MyFunctionn()";
idTimer=window.setTimeout(command,1000);

Время задержки в приведённом примере составляет 10 секунд, по прошествии этого времени запускается функция MyFunction.

Метод clearTimeour останавливает таймер, запущенный методом setTimeout:

clearTimeout(idTimer);

Эти два метода очень полезны для периодического вызова определённых функций или организации анимации средствами JavaScript.

Андрей Пискунов
Источник: Artefact

Спонсор раздела

Рассылки Subscribe.ru:

Библиотека сайтостроительства - новости, статьи, обзоры
Дискуссионный лист для web-разработчиков
Подписка на MailList.Ru
Автор: NunDesign
Другие разделы
Оптимизация сайтов
Web-студии
» Новое в разделе
Web-дизайн
Web-программирование
Интернет-реклама
Раскрутка сайта
Web-графика
Flash
Adobe Photoshop
Рассылка
Инструменты вебмастера
Контент для сайта
HTML/DHTML
Управление web-проектами
CSS
I2R-Журналы
I2R Business
I2R Web Creation
I2R Computer
рассылки библиотеки +
И2Р Программы
Всё о Windows
Программирование
Софт
Мир Linux
Галерея Попова
Каталог I2R
Партнеры
Amicus Studio
NunDesign
Горящие путевки, идеи путешествийMegaTIS.Ru

2000-2008 г.   
Все авторские права соблюдены.
Rambler's Top100