API15

JHTMLBehavior/modal: Difference between revisions

From Joomla! Documentation

Doxiki (talk | contribs)
New page: <span class="editsection" style="font-size:76%;"> <nowiki>[</nowiki>Edit Descripton<nowiki>]</nowiki> </span> {{Description:JHTMLBehavior/modal}...
 
m removing red link to edit, no existant pages
Line 1: Line 1:
<span class="editsection" style="font-size:76%;">
<span class="editsection" style="font-size:76%;">
<nowiki>[</nowiki>[[Description:JHTMLBehavior/modal|Edit Descripton]]<nowiki>]</nowiki>
<nowiki>[<! removed edit link to red link >]</nowiki>
</span>
</span>


{{Description:JHTMLBehavior/modal}}
<! removed transcluded page call, red link never existed >


===Syntax===
===Syntax===
Line 91: Line 90:


<span class="editsection" style="font-size:76%;">
<span class="editsection" style="font-size:76%;">
<nowiki>[</nowiki>[[SeeAlso:JHTMLBehavior/modal|Edit See Also]]<nowiki>]</nowiki>
<nowiki>[<! removed edit link to red link >]</nowiki>
</span>
</span>
{{SeeAlso:JHTMLBehavior/modal}}
<! removed transcluded page call, red link never existed >


===Examples===
===Examples===
Line 106: Line 105:
  format= ,,,
  format= ,,,
</dpl>
</dpl>
[[Category:Archived pages API15]]

Revision as of 17:22, 12 May 2013

[<! removed edit link to red link >]

<! removed transcluded page call, red link never existed >

Syntax

modal($selector='a.modal', $params=array())
Parameter Name Default Value Description
$selector 'a.modal'
$params array()

Defined in

libraries/joomla/html/html/behavior.php

Importing

jimport( 'joomla.html.html.behavior' );

Source Body

function modal($selector='a.modal', $params = array())
{
        static $modals;
        static $included;

        $document =& JFactory::getDocument();

        // Load the necessary files if they haven't yet been loaded
        if (!isset($included)) {

                // Load the javascript and css
                JHTML::script('modal.js');
                JHTML::stylesheet('modal.css');

                $included = true;
        }

        if (!isset($modals)) {
                $modals = array();
        }

        $sig = md5(serialize(array($selector,$params)));
        if (isset($modals[$sig]) && ($modals[$sig])) {
                return;
        }

        // Setup options object
        $opt['ajaxOptions']     = (isset($params['ajaxOptions']) && (is_array($params['ajaxOptions']))) ? $params['ajaxOptions'] : null;
        $opt['size']            = (isset($params['size']) && (is_array($params['size']))) ? $params['size'] : null;
        $opt['onOpen']          = (isset($params['onOpen'])) ? $params['onOpen'] : null;
        $opt['onClose']         = (isset($params['onClose'])) ? $params['onClose'] : null;
        $opt['onUpdate']        = (isset($params['onUpdate'])) ? $params['onUpdate'] : null;
        $opt['onResize']        = (isset($params['onResize'])) ? $params['onResize'] : null;
        $opt['onMove']          = (isset($params['onMove'])) ? $params['onMove'] : null;
        $opt['onShow']          = (isset($params['onShow'])) ? $params['onShow'] : null;
        $opt['onHide']          = (isset($params['onHide'])) ? $params['onHide'] : null;

        $options = JHTMLBehavior::_getJSObject($opt);

        // Attach modal behavior to document
        $document->addScriptDeclaration("
        window.addEvent('domready', function() {

                SqueezeBox.initialize(".$options.");

                $$('".$selector."').each(function(el) {
                        el.addEvent('click', function(e) {
                                new Event(e).stop();
                                SqueezeBox.fromElement(el);
                        });
                });
        });");

        // Set static array
        $modals[$sig] = true;
        return;
}

[<! removed edit link to red link >] <! removed transcluded page call, red link never existed >

Examples

<CodeExamplesForm />