Когда мне нужно было сделать вывод иконок фотошопа на форуме, я задумался о том, как сделать дополнительное ajax окно наподобие окон ucoz. Я немного покопался в кодах и хочу поделиться с вами полезной информацией. Все функции, относящиеся к созданию динамических окон на сайтах ucoz находятся в автоматически подключаемом файле http://s21.ucoz.net/src/u.js . Для того чтобы создать окно, нам нужен xml файл с содержимым окна и собственно ссылка для формирования окна. В одном xml файле может содержаться большое количество информации из разных окон. Определить, какую именно информацию отобразить, скрипту помогает идентификатор, который так же указывается в тексте ссылки.
Давайте вместе создадим новое окно. Сначала создадим файл с расширением .xml и вот таким содержанием:
Code
<?xml version="1.0" encoding="UTF-8"?>
<ajax>
<cmd t="layerContentHallo" p="innerHTML"><![CDATA[
Hallo World!
]]></cmd>
<cmd t="layerContentSmth" p="innerHTML"><![CDATA[
Что ни будь...
]]></cmd>
</ajax>
Первые две и последняя строчки в данном случае обязательны. А блоки далее можно дублировать и помещать в них различную информацию, будь то html или просто текст. Обратите внимание на параметр t. Он содержит запись вида layerContentSomething. Слово помеченное красным и есть идентификатор окна. Он задается произвольно и именно его мы и будем указывать в наших ссылках. А вот код ссылки:
Code
<a href="javascript:openLayerB('ИДЕНТИФИКАТОР ОКНА',0,'ПУТЬ К XML ФАЙЛУ','НАЗВАНИЕ ОКНА',ШИРИНА,ВЫСОТА);">Ссылка</a>
<!-- Пример -->
<a href="javascript:openLayerB('Hallo',0,'http://studioad.ru/diff/windows.xml','Привет мир!',200,100);">Ссылка</a>
Можете попробовать в действии: Открыть окно