2004 г.
HTML Help ActiveX control: всплывающие окна
Владимир Дригалкин
«Издательский Дом «КОМИЗДАТ»
Чтобы разъяснить пользователю значение какого-нибудь слова в тексте документа HTML, одни веб-программисты пишут разъяснения в кавычках, другие создают закладки. Но есть более красивый способ - использовать всплывающие окна, не прибегая при этом к навороченным скриптам
Сколько ни блуждал я просторами интернета - ни на чьем сайте не видел всплывающих окон, созданных с помощью метода TextPopup HTML Help ActiveX control. А ведь это самый простой, корректный и эффективный способ для вывода небольших комментариев, разъяснительной информации:
Синтаксис метода TextPopup таков:
TextPopup (pszText, pszFont, horzMargins, vertMargins,
clrForeground, clrBackground)
Теперь давайте рассмотрим атрибуты данного метода:
-
PszText - текст, который будет отображен во всплывающем окне;
-
PszFont - атрибуты шрифта, которые указываются через запятую в следующем порядке:
- название шрифта (например, Tahoma, Arial и т.п.);
- размер шрифта (числовое значение);
- кодировка символов шрифта (числовое значение - если не указывать, будет использована кодировка текущей страницы);
- начертание шрифта (может иметь элементы: PLAIN - обычный текст, BOLD - жирный, ITALIC - курсив, UNDERLINE - подчеркнутый).
Вот, например, способ применения атрибута PszFont - "Verdana,8,,BOLD";
-
HorzMargins - размер окна по горизонтали;
-
VertMargins - размер окна по вертикали;
-
ClrForeground - цвет текста в RRGGBB формате. По умолчанию - черный (-1);
-
ClrBackground - цвет фона всплывающего окна. По умолчанию - ярко-желтый (-1).
Итак, атрибуты мы рассмотрели, теперь можно приступить к созданию всплывающего окна. Для этого нам нужно вставить в HTML файл - объект HTML Help ActiveX:
<OBJECT id=test type="application/x-oleobject"
classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
</OBJECT>
При этом совершенно не важно, где именно будет помещен он в HTML-странице. Заметьте, что идентификатору id присвоено имя test - оно может быть любым, но обязательно должно совпадать с именем при вызове JavaScript.
Далее напишем небольшую программу, в которой определим, какой шрифт следует использовать во всплывающем окне, и здесь же укажем текст для самого окна или нескольких окон (в нашем случае - двух):
<script>
FontFace = "Verdana,8,,BOLD"
TopicText = "Текст первого всплывающего окна"
TopicText2 = "Текст второго всплывающего окна"
</script>
Имена переменных: FontFace, TopicText, TopicText2 - могут быть любыми, но обязательно должны совпадать с именами при вызове JavaScript. В программе вы можете добавить строки и других всплывающих окон.
Самое главное мы уже сделали: вставили в документ объект HTML Help ActiveX, написали программу - теперь осталось только научиться вызывать метод TextPopup. Больших сложностей в этом не будет:
<!--Отображение всплывающего окна с текстом TopicText
с фоном по умолчанию-->
<a href="JavaScript:test.TextPopup (TopicText, FontFace,
10,10,-1,-1)" title="Нажмите меня...">Пример 1</a>
<!--Отображение всплывающего окна с текстом TopicText2
с белым фоном-->
<a href="JavaScript:test.TextPopup (TopicText2,
FontFace, 10,10,10,10)"
title="Нажмите меня...">Пример 2</a>
Вот таким простым способом можно создать красивые всплывающие окна.