<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
        <channel>
        <title>modal / Поиск по тегам / Русский клуб Joomla</title>
        <link>http://joomclub.net/ru/rss/tag/modal/</link>
        <description><![CDATA[Сайт посвящен Joomla во всех ее проявлениях, мы рассказываем о шаблонах, расширениях, компонентах, плагинах и модулях]]></description>
        <language>ru</language>
        <managingEditor>tena2000@mail.ru</managingEditor>
        <webMaster>tena2000@mail.ru</webMaster>
        <generator>Alto CMS v.1.1.13</generator>
                    <item>
                <title>SqueezeBox</title>
                <guid isPermaLink="true">http://joomclub.net/ru/t/38/</guid>
                <link>http://joomclub.net/ru/blog/verstka/38.html</link>
                <author>tena2000@mail.ru</author>
                <description><![CDATA[<p>SqueezeBox является стандартным для joomla модальным окном, основанном на mootools (стандартный фреймворк joomla), в большинстве случаев данного модального окна достаточно как для сайта-визитки, так и для портала, поддерживаются браузеры: IE 6+, Opera 9, Firefox 1.5+, Safari 3+.</p>
<p>Плагин поддерживает вывод:</p>
<ul><li><span><span>ajax запросы (возможность получения контента с помощью ajax)</span>;</span></li><li><span><span>вывод/копирование элементов уже существующих на странице</span>;</span></li><li><span><span>iframe</span>;</span></li><li><span><span>изображений (без поддержки галереи, т.е. вывод одиночных изображений)</span>;</span></li><li><span>видео с <span>YouTube (flash).</span></span></li></ul><p><span><span><a name="cut" rel="nofollow"></a> </span></span></p>
<h4>Использование.</h4><p> </p>
<p>Для использования плагина требуется вызвать в нужном шаблоне (или в шаблоне всего сайта) плагин, делается это следующим образом:</p>
<pre class="prettyprint"><code>&lt;?php JHTML::_('behavior.modal'); ?&gt;</code></pre>
<p>В стандартной конфигурации плагин будет обрабатывать все ссылки с классом <em>modal</em>, т.е. как вы понимаете подключение (как впрочем и использование достаточно простое и не требует глубоких знаний js).</p>
<p>Рассмотрим несколько простейших примеров:</p>
<ol><li><span><span><strong>Ajax запросы</strong> (возможность получения контента с помощью ajax):<br>
<br>
JS:<br>
<pre class="prettyprint"><code>window.addEvent('domready', function() {<br />&nbsp;&nbsp;&nbsp; SqueezeBox.assign($$('a[rel=boxed]'), {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; size: {x: 300, y: 400},<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ajaxOptions: {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; method: 'get'<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; });<br />});</code></pre>Html:<br>
<pre class="prettyprint"><code>&lt;a href=&quot;request.html&quot; rel=&quot;boxed&quot;&gt;Получение контента с помощью ajax.&lt;/a&gt;</code></pre>Приведенный выше образец JS позволяет загрузить контент в модельное окно посредством ajax-запроса, для этого к ссылке добавляется атрибут <em>rel=«boxed»</em>, являющийся маркером, на который ориентируется плагин.<br>
<br>
</span></span></li><li><span><span><strong>Вывод элементов уже существующих на странице</strong> мы подробно рассматривали в статье <a href="http://joomclub.net/blog/verstka/7.html" rel="nofollow">«Вывод модуля «Login» во всплывающем окне.»<br>
</a> <br>
</span></span></li><li><span><span><strong>Вывод контента в iframe.</strong><br>
<br>
JS:<br>
<pre class="prettyprint"><code>window.addEvent('domready', function() {<br />&nbsp;&nbsp;&nbsp; SqueezeBox.assign($$('a.boxed'), {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; parse: 'rel'<br />&nbsp;&nbsp;&nbsp; });<br />});</code></pre>Html:<br>
<pre class="prettyprint"><code>&lt;a href=&quot;http://google.com&quot; class=&quot;boxed&quot; rel=&quot;{handler:'iframe',size:{x:840,y:550}}&quot;&gt;Google&lt;/a&gt;<br /></code></pre>В данном примере плагин ориентируется на ссылку с классом <em>boxed</em>, при этом в атрибуте <em>rel</em> указывается, что ссылка открывается в iframe размерами 840*550 пикселей.<br>
<br>
</span></span></li><li><span><span><strong>Вывод изображений.</strong><br>
<br>
JS:<br>
<pre class="prettyprint"><code>window.addEvent('domready', function() {<br />&nbsp;&nbsp;&nbsp; SqueezeBox.assign($$('a[rel=boxed]'));<br />});<br /></code></pre>Html:<br>
<pre class="prettyprint"><code>&lt;a rel=&quot;boxed&quot; href=&quot;адрес_большого_изображения.jpg&quot;&gt;&lt;img src=&quot;адрес_превью.jpg&quot; alt=&quot;Заголовок&quot; /&gt;&lt;/a&gt;</code></pre>Т.е. для вывода полноразмерного изображения в модальном окне мы указывем плагину обрабатывать ссылки (ссылки на полноразмерное изображение) с атрибутом <em>rel=«boxed»</em>.<br>
<br>
</span></span></li><li><span><span><strong>Вывод видео с YouTube (flash).</strong><br>
<br>
JS:<br>
<pre class="prettyprint"><code>SqueezeBox.parsers.swf = function(preset) {<br />&nbsp;&nbsp;&nbsp; return (preset || this.url.test(/\.swf/)) ? this.url : false;<br />};<br /><br />SqueezeBox.handlers.swf = function(url) {<br />&nbsp;&nbsp;&nbsp; var size = this.options.size;<br />&nbsp;&nbsp;&nbsp; return new Swiff(url, {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; id: 'sbox-swf',<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; width: size.x,<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; height: size.y<br />&nbsp;&nbsp;&nbsp; });<br />};<br /><br />window.addEvent('domready', function() {<br />&nbsp;&nbsp;&nbsp; SqueezeBox.assign($$('a.boxed'), {<br />&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; parse: 'rel'<br />&nbsp;&nbsp;&nbsp; });<br /><br />});</code></pre>Html:<br>
<pre class="prettyprint"><code>&lt;a href=&quot;http://www.youtube.com/watch?v=JTSoD4BBCJc&quot; class=&quot;boxed&quot; rel=&quot;{url:'http://www.youtube.com/watch?v=JTSoD4BBCJc',handler:'swf',size:{x:425,y:350}}&quot;&gt;The Hobbit Official Trailer&lt;/a&gt;</code></pre>Т.е. кроме того, что требуется указать ссылку на видео, нужно дополнительно в атрибуте rel указать, что это swf и url данного видео.</span></span></li></ol><p> </p>
<h4>Параметры.</h4><p> </p>
<p>Атрибут <em>rel</em> может иметь несколько параметров:</p>
<table class="table table-striped"><thead><tr><th>Параметр</th><th>Описание</th><th>Значения</th><th>Пример</th></tr></thead><tbody><tr><td>ajaxOptions</td><td>Применяемый для работы с контентом метод</td><td>post, get</td><td>ajaxOptions: { method: 'get' }</td></tr><tr><td>handler</td><td>Обработчик</td><td>adopt, iframe, swf, image, clone, ajax</td><td>handler:'swf'</td></tr><tr><td>fullScreen</td><td> </td><td> </td><td> </td></tr><tr><td>parseSecure</td><td> </td><td> </td><td> </td></tr><tr><td>closable</td><td>Закрытие модельного окна</td><td>true, false</td><td>closable: true</td></tr><tr><td>closeBtn</td><td>Кнопка закрытия</td><td>true, false</td><td>closeBtn: true</td></tr><tr><td>iframePreload</td><td>Загрузка содержимого iframe, перед показом</td><td> </td><td> </td></tr><tr><td>iframeOptions</td><td>Опции вывода iframe</td><td> </td><td> </td></tr><tr><td>url</td><td>Адрес</td><td> </td><td> url:'http://www.youtube.com/'</td></tr><tr><td>size</td><td>Размер модального окна</td><td> </td><td>size:{x:425,y:350}</td></tr><tr><td>shadow</td><td>Тень</td><td>true, false</td><td> </td></tr><tr><td> </td><td> </td><td> </td><td> </td></tr><tr><td>onOpen</td><td>Событие при открытии модального окна</td><td> </td><td> </td></tr><tr><td>onClose</td><td>Событие после закрытия модельного окна</td><td> </td><td>onClose:update</td></tr><tr><td>onUpdate</td><td> </td><td> </td><td> </td></tr><tr><td>onResize</td><td>Событие после изменения окна браузера</td><td> </td><td> </td></tr><tr><td>onMove</td><td> </td><td> </td><td> </td></tr><tr><td>onShow</td><td>Событие при показе модального окна</td><td> </td><td> </td></tr><tr><td>onHide</td><td>Событие при скрытии модального окна</td><td> </td><td> </td></tr></tbody></table>
<p> </p>
<h4>Документация.</h4><p> </p>
<p><a href="http://digitarald.de/project/squeezebox/" rel="nofollow">SqueezeBox — Expandable Lightbox </a><br>
<a href="http://mootools.net/docs/core125/core" rel="nofollow">Mootools</a></p>
<ul><li><a href="http://mootools.net/docs/core125/core/Element/Element.Dimensions" rel="nofollow">Element.Dimensions</a></li><li><a href="http://mootools.net/docs/core125/core/Fx/Fx.Tween" rel="nofollow">Fx.Tween</a></li><li><a href="http://mootools.net/docs/core125/core/Fx/Fx.Morph" rel="nofollow">Fx.Morph</a></li><li><a href="http://mootools.net/docs/core125/core/Utilities/Selectors" rel="nofollow">Selectors</a></li><li><a href="http://mootools.net/docs/core125/core/Utilities/JSON" rel="nofollow">JSON</a></li><li><a href="http://mootools.net/docs/core125/core/Utilities/DomReady" rel="nofollow">DomReady</a></li></ul><p> </p>]]></description>
                <pubDate>Wed, 19 Sep 2012 19:54:01 +0400</pubDate>
                            </item>
            </channel>
    </rss>
