Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Орлов Л.В. Web-сайт без секретов (2-е издание, 2006).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.62 Mб
Скачать

Глава 2. Выводим иллюстрации в отдельном окне

Иногда необходимо организовать вывод графических изображений в отдельном окне, но вам хотелось бы, чтобы новое окно браузера не содержало кнопок навигации, адресной строки, полос прокрутки и чтобы его заданный первоначально физический размер был фиксированным. Как этого добиться? Достаточно просто: следует использовать несложный сценарий JavaScript, запрещающий изменение пользователем размеров окна и удаляющий из него все ненужные вам компоненты.

Скрипт, написанный на языке Java, интегрируется в web-страни-цу при помощи тэга <SCRIPT> с атрибутом LANGUAGE, который помещается в начало кода html-документа, либо между тэгами <HEAD> и </HEAD>, или же сразу после директивы <BODY>. Сам текст сценария не отображается в окне браузера при загрузке документа, он исполняется подобно подпрограмме в случае определенного действия пользователя, например, открытия или закрытия окна. Встроенные в web-страницу сценарии JavaScript интерпретируются браузером вместе с кодом разметки гипертекста и вызываются на исполнение из тела html-документа специальными директивами.

Итак, для того чтобы организовать вывод графического изображения в отдельном окне фиксированного размера без кнопок навигации и полос прокрутки, в тело html-документа необходимо поместить следующий код:

<BODY>

<SCRIPT LANGUAGE="JavaScript">

function picture( ){

window.open("URL. определяющий адрес расположения картинки",

"newwindow", config=''width-ширина картинки, height-высота

картинки, toolbar=0, location=0, directories=0, status=1,

menubar=0, scrollbars=0, resizable=0");

}

</SCRIPT>

Тело html-документа

</BODY>

Записываемый в коде сценария JavaScript адрес картинки лучше всего приводить в абсолютном виде, с указанием протокола передачи данных и имени целевого графического файла, например, http://www. myserver.ru/images/picture.jpg. Атрибут config определяет конфигурацию создаваемого окна. Значения параметров width и height, устанавливающих ширину и высоту картинки в пикселах, следует увеличить на 10-15 точек, поскольку в новом окне изображение будет иметь отступы сверху и снизу, а значит, определенная его часть может оказаться скрытой за границей окна. Остальные параметры атрибута config принимают одно из двух возможных значений: 0 — определяемый параметром элемент не отображается на экране и 1 — определяемый параметром объект отображается вместе с другим содержимым. Так, параметр toolbar выводит на экран (или не выводит) панель инструментов с функциональными кнопками, параметр location — адресную строку, directories — список директорий, status — строку состояния в нижней части окна, menubar — системную панель, содержащую меню Файл, Правка, Вид и т.д., параметр scrollbars — полосы прокрутки, и, наконец, параметр resizable разрешает или запрещает произвольное изменение размеров окна пользователем.

Определитель picture( ), записанный правее директивы function, является уникальным именем данной функции JavaScript, которое будет использовано в дальнейшем для вызова этой функции на исполнение. Если вы планируете выводить на экран подобным образом несколько разных графических файлов, для каждого из них придется написать отдельную функцию, отличающуюся от предложенной выше лишь именем, адресом расположения целевого файла и значениями размеров картинки.

Для того чтобы активизировать созданный сценарий JavaScript, в теле html-документа необходимо разместить соответствующую гиперссылку, включающую ряд необходимых параметров. Для подготовки такой ссылки можно использовать графическую миниатюру рисунка, отображаемого браузером в отдельном динамически появляющемся окне. Код гиперссылки в этом случае будет выглядеть следующим образом:

<A HREF="javascript:picture()"><IMG SRC="URL миниатюры картинки" WDTH="ширина миниатюры" НЕIGHT="высота миниатюры" BORDER="0"АLT="Альтернативный текст"></А>

где picture() — уникальное имя функции, вызываемой при активизации гиперссылки.

Для контроля всех перечисленных параметров используются возможности JavaScript, а конкретно метод open объекта window. Вот его все возможные параметры:

window.open('http://www.mysite.ru','namewin','top, left, menubar, toolbar, location, directories, status, scrollbars, resizable, width, height')

Здесь 3 группы параметров.

Рассмотрим эти параметры:

  • http://www.mysite.ru — это адрес сайта,который открывается в новом окне браузера,

  • namewin — это имя, которое будет присвоено открываемому окну.

  • top — отступ открываемого окна от верхней части экрана. Значение задается в пикселах, например, top=100

  • left — отступ открываемого окна от левой части экрана. Значение задается в пикселах, например, left=150

  • menubar — определяет показывать строку меню браузера в открываемом окне или нет. Значениями являются yes или no, вы также можете использовать в виде значений соответственно 1 и 0.

  • toolbar — определяет показывать в открываемом окне панель Обычные кнопки (назад, вперед) или нет. Например, toolbar=no.

  • location — определяет показывать панель Адресная строка или нет. Например, location=0.

  • directories — определяет показывать Ссылки, или нет. Например, directories=yes.

  • status — определяет показывать строку состояния или нет. Например, status=1.

  • scrollbars — определяет можно ли при необходимости, когда содержимое страницы не помещается на экране показывать панели прокрутки или нет. Например, scrollbars=yes.

  • resizable — определяет возможность пользователя изменять размеры открываемого окна. Если задано значение resizable=0, то в открываемом окне недоступной становится кнопка «Развернуть» (при доступных «Свернуть» и «Закрыть»), а в Netscape 6 вообще не отображаются никакие кнопки, кроме доступной «Закрыть».

  • width — ширина открываемого окна. Значение задается в пикселах, например, width=640

  • height — высота открываемого окна. Значение задается в пикселах, например, height=480

Для использования метода open объекта window его сопоставляют с обработчиком события, рассмотрим это на примерах:

<form>

<input

onclick="window.open('http://www.mysite.ru','Window','top=20,

left=30, menubar=0, toolbar=0, location=0, directories=0,

status=0, scrollbars=1, resizable=0, width=800, height=600')"

type=button value="Жми тут ">

</form>

Мы создали форму с единственной кнопкой. Если пользователь нажмет на нее, то будет открыто новое окно браузера без каких-либо панелей. Рассмотрим создание текстовых ссылок, использовав вызов заранее созданной функции JavaScript, которая выполняет открытие нового окна:

<head>

<SCRIPT LANGUAGE="JavaScript"> <!--

function new_window() {

window.open('http://www.mysite.ru','Brouserwindow','top=25, left=40, menubar=0, toolbar=0, location=0, directories=0, sta-tus=0, scrollbars=0, resizable=0, width=600, height=400'); }

// --> </SCRIPT> </head>

<a href="javascript: new_window()">Mysite.ru</a> Непосредственно при нажатии на ссылку выполняется соответствующая функция JavaScript.