Разработка для Mozill'ы, по-русски

Глава 1. Здравствуй Я.

Ну, что, приступим? :)

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

Вот простейший код, который поприветствует вас. Создадим файл на диске, назовём 1.1.xul и наполним его таким содержанием:

<?xml version="1.0" encoding="windows-1251"?>
<window
    title="Здравствуй"
    id="HelloWin"    
    xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<description value="Привет ! :)"/>
</window>
Посмотреть| Исходник

Перед тем, чтобы рассмотреть его - попробуем запустить его, для этого существует множество способов - вот один из них откройте в вашей Mozille или Firebird через меню File -> Open File..

В окне мы увидим. Привет ! :) . Это немножко не то, что я ожидал бы увидеть, поэтому пойдем другими путями. Вы можете запустить из командной строки

MozillaFirebird -chrome <путь к файлу>

Опция -chrome указывает Мозиле запустится в отдельном окне, в контексте chrome, без загрузки кода, который формирует сам внешний вид браузера - меню, контекстное меню, тул-бар и прочее..

В зависимости от операционной системы, это строка в вашем примере может выглядеть по-разному. Если вы указываете абсолютный путь к файлу, не забывайте добавлять file:// в начале пути. Это строка может выглядеть так:

MozillaFirebird -chrome file://D:\xul.ru\tutorial\1.1.xul

Note: Кроме file:// - ссылки, которая указывает на корень файловой системы существует resource:// - указывает на корень папки, в которой установлена Mozilla/FireBird и chrome:// указывающая на подкаталог chrome в папке, где установлена Mozilla или подкаталог chrome текущего профиля.Эти ссылки нам очень пригодятся в дальнейшем.

Рассмотрим ещё один, весьма очевидный способ, который будем неоднократно использовать в дальнейшем. В JavaScript есть метод window.open().

Её формат:

 window.open(ссылка, имя окна, опции);

В Mozill'е используется дополнительная опция - chrome которая делает тоже что и опция -chrome в командной строке.

Итак, создадим файл start.html, в том же каталоге, где вы поместили XUL файл, и содержащий этот код:

<a 
href="1.1.xul" 
onclick="window.open('1.1.xul','hi','chrome,resizeable'); return false;">
hi
</a>

Запускаем его, жмём на ссылку и - наслаждаемся:
Наша первая xul программа Посмотреть
Далее, на том, как мы запускаем наши примеры, я не останавливаюсь, все примеры в этом руководстве запускаются именно этим способом. Подробнее о window.open() будет упомянуто в главе "Окна".

Теперь попробуем понять, что делает наш файл.

<?xml version="1.0" encoding="windows-1251"?> - Это стандартный заголовок любого xml файла, а еще раз напоминаю, что xul - это ничто иное как xml. Эта строка обязана присутствовать в начале каждого XUL файла, как тег <html> в HTML. encoding="windows-1251" - говорит о том, что у нас кодировка нашего текста Windows-1251. Подробнее о кодировках мы сказали во вступлении.

<window title= "Здравствуй"id="HelloWin" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> Тэг <window> описывает создаваемое нами окно, это корневой элемент XUL-документа, тег полностью аналогичен тегу <body> в html.

Его атрибуты:

На заметку: Подробнее об окнах расказанно в этом руководстве в главе Окна. Полный список атрибутов <window> можно посмотреть на сайте Mozdev. Вот их краткий список:

<description value="Привет ! :)"/> - Тэг <description> описывает блок текста, располагаемый на странице. Имеет два различных формата - первый, такой как мы использовали когда весь текст располагается внутри атрибута value, в этом случае Мозилла выводит текст одной строкой, не пытаясь переносить. Также можно расположить текст между открывающим и закрывающим тэгом, тогда текст может содержать множество строк. Например, так:

<?xml version="1.0" encoding="windows-1251"?>
<window
    title="Здравствуй"
    id="HelloWin"    
    xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
	<description>
	Раз Привет
	два Привет
	три Привет
	</description>
</window>
Посмотреть|Исходник

Другие атрибуты <description> :


Хотите помочь? Вы нашли ошибку или хотите сделать комментарий - пишите. Я рад любой помощи.


©Yegor Turin (electroCat.ru) 2004 year. All Rights Reserved.