Глава 2. ОБРАБОТКА СОБЫТИЯ НА VBScript

Использование объекта window для передачи параметров

В предыдущем разделе отмечено, что в определенных случаях без объекта window трудно обойтись. Для подтверждения такого утверждения предлагается рассмотреть ПРИМЕР5. В рассматриваемом примере используется вместо кнопки рисунок, который представлен на Web-странице рис. 7.

Рис. 7. Начальное состояние открытого окна

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

Рис. 8. Новый рисунок при наезде мыши

К процедурам обработки событий на VBScript - наезда и увода указателя мыши с объекта (в данном случае под объектом подразумевается тег-контейнер <IMG…>), в примере добавлен третий обработчик события – щелчок левой клавишей мыши по объекту OnMouseDown, который обладает таким же методом в системе, как и OnClick. Программные коды для отображения Web-страницы в окне браузера со сценарием обработки событий показаны в листинге 6.

            Листинг 6.

<HTML>

<HEAD>

<TITLE>Работа с рисунками</TITLE>

<HEAD>

<SCRIPT LANGUAGE="VBScript">

  Sub in1_Onmouseover

    k1.src="../Рисунки/Ris-17.gif"

  End Sub

  Sub in1_Onmouseout

    k1.src="../Рисунки/Ris-18.gif"

  End Sub

  Sub in1_Onmousedown

    Dim y

    y="PR1-Функция при загрузке.htm"

    Set y=window.open(y,""," top=170, left=120, width=400, height=150")

  End Sub

</SCRIPT>

</HEAD>

<BODY>

<IMG ID="in1" SRC="../Рисунки/Ris-18.gif">

</BODY>

</HTML>

            В процедуре Sub in1_Onmousedown переменной y присваивается путь к файлу, который представляет собой Web-страницу, а так же оператор Set, с помощью которого формируются параметры нового окна и передаются методу Open. Запись оператора Set выглядит следующим образом:

Set y=window.open(y,""," top=170, left=120, width=400, height=150")

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

Метод Open создает новое окно браузера и позволяет управлять его видом, синтаксис вызова данного метода:

X=window.open(url, имя_нового_окна, список_опций)

Url – является строкой, содержащей относительный или абсолютный путь к файлу, открываемому в новом окне.

Имя_нового_окна – если окно с этим именем уже существует, то оно используется повторно, т.е. документ отображается в существующем окне, если же такого окна еще нет, то оно будет открыто.

Список_опций – это список разделенных запятыми опций конфигурации нового окна. Весь список должен быть заключён в кавычки и записан в одной строке.

После того как  сформированы параметры нового окна, происходит его открытие. Запускается новая версия браузера, в котором отображается файл в рассматриваемом примере, открывается файл с именем: «PR1-Функция при загрузке.htm». На рис. 9 показано новое окно, которое открылось после щелчка мыши по рисунку.

Рис. 9. Открытое новое окно после щелчка мышью по рисунку

 

Опции для метода Open перечислены в таблице 2.

 

Таблица 2. Опции для метода Open

Опция

Описание

Значение по умолчанию

Directories= yes | no

Наличие в окне браузера панели инструментов

 

Height=integer

Устанавливает высоту окна в пикселах

Определяется системой

Location= yes | no

Наличие в окне браузера строки Adress

 

Menubar= yes | no

Выводит или прячет строку меню

No

Resizable= yes | no

Представляет возможность изменять размеры окна

 

Scrollbars= yes | no

Наличие линейки прокрутки

 

Status= yes | no

Отображает или скрывает строку состояния

No

Toolbar= yes | no

Отображает или скрывает панель инструментов

No

Width=integer

Устанавливает ширину окна в пикселах

Определяется системой

 

Oglav.gifSled.gif

Hosted by uCoz