Вход Регистрация
Файл: css/5grid/init.js
Строк: 835
<?php
/*****************************************************************/
/* 5grid 0.4.3 by n33.co | MIT+GPLv2 license licensed            */
/* init.js: Init script                                          */
/*****************************************************************/

/*********************/
/* Settings          */
/*********************/

    
var _5grid_settings = {
        
breakpoint_1000px:                1200,
        
breakpoint_mobile:                480,
        
prefix:                            'style',
        use:                            
'mobile,desktop',
        
viewport_is1000px:                1040,
        
viewport_is1200px:                1280,
        
////////////////////////////////////////////////////////
        
mobileUI:                        0,
        
mobileUI_hideAddressBar:        0,
        
mobileUI_openerText:            '=',
        
mobileUI_openerWidth:            60,
        
mobileUI_slideSpeed:            200,
        
mobileUI_theme:                    'modern',
        
mobileUI_themeNavColor:            '#1f1f1f',
        
mobileUI_themeTitleBarColor:    '#444444',
        
mobileUI_titleBarFixed:            1,
        
mobileUI_titleBarHeight:        44,
        
mobileUI_titleBarOverlaid:        0,
        
////////////////////////////////////////////////////////
        
mobileUI_navInnerPad:            0,
        
mobileUI_force:                    0,
        
mobileUI_tapDelay:                200,
        
mobileUI_orientationDelay:        0,
        
debug_noExtLoad:                0
    
};

/*********************/
/* Helper plugins    */
/*********************/

    /* jQuery resize event - v1.1 - 3/14/2010 http://benalman.com/projects/jquery-resize-plugin/ | Copyright (c) 2010 "Cowboy" Ben Alman | Dual licensed under the MIT and GPL licenses. | http://benalman.com/about/license/ */
    
(function(jQuery,h,c){var a=jQuery([]),e=jQuery.resize=jQuery.extend(jQuery.resize,{}),i,k="setTimeout",j="resize",d=j+"-special-event",b="delay",f="throttleWindow";e[b]=250;e[f]=true;jQuery.event.special[j]={setup:function(){if(!e[f]&&this[k]){return false}var l=jQuery(this);a=a.add(l);jQuery.data(this,d,{w:l.width(),h:l.height()});if(a.length===1){g()}},teardown:function(){if(!e[f]&&this[k]){return false}var l=jQuery(this);a=a.not(l);l.removeData(d);if(!a.length){clearTimeout(i)}},add:function(l){if(!e[f]&&this[k]){return false}var n;function m(s,o,p){var q=jQuery(this),r=jQuery.data(this,d);r.w=o!==c?o:q.width();r.h=p!==c?p:q.height();n.apply(this,arguments)}if(jQuery.isFunction(l)){n=l;return m}else{n=l.handler;l.handler=m}}};function g(){i=h[k](function(){a.each(function(){var n=jQuery(this),m=n.width(),l=n.height(),o=jQuery.data(this,d);if(m!==o.w||l!==o.h){n.trigger(j,[o.w=m,o.h=l])}});g()},e[b])}})(jQuery,this);

/*********************/
/* Object Setup      */
/*********************/

    
var _5gridC = function()
    {
        
this.events = new Array();
        
this.readyWait false;

        
this.isReady false;
        
this.isMobile false;
        
this.isDesktop false;
        
this.isFluid false;
        
this.is1000px false;
        
this.is1200px false;
    }

    
_5gridC.prototype.bind = function(namef)
    {
        if (!
this.events[name])
            
this.events[name] = new Array();
        
        
this.events[name].push(f);
    }

    
_5gridC.prototype.trigger = function(name)
    {
        if (!
this.isReady || !this.events[name] || this.events[name].length 1)
            return;
            
        for (
i in this.events[name])
            (
this.events[name][i])();
    }

    
_5gridC.prototype.ready = function(fwait) {
        if (
wait)
            
this.readyWait true;

        
this.bind('ready'f);
    }
    
    
// Custom events
        
_5gridC.prototype.orientationChange = function(f) { this.bind('orientationChange'f); }
        
_5gridC.prototype.mobileUINavOpen = function(f) { this.bind('mobileUINavOpen'f); }
        
_5gridC.prototype.mobileUINavClose = function(f) { this.bind('mobileUINavClose'f); }

    
_5gridC.prototype.readyCheck = function()
    {
        var 
this;
        
        
window.setTimeout(function() {
            if (
x.isReady)
                
x.trigger('ready');
            else
                
x.readyCheck();
        }, 
50);
    }

    var 
_5grid = new _5gridC;


(function() {

/*********************/
/* Initialize        */
/*********************/

    // Vars
        
var    _settings    _5grid_settings,
            
_window        jQuery(window),
            
_head        jQuery('head'),
            
_document    jQuery(document);
        var    
baseURL,
            
doFluiddo1000pxdo1200pxdoMobiledoDesktopdoMobileOnly,
            
isLocked false,
            
isTapLocked falsetapId,
            
isTouch = !!('ontouchstart' in window),
            
headQueue = new Array();
        var 
vwwkwvxy;

    
// Tap handling
        
jQuery.fn.tap_5grid = function(fsuffixnoMove) {
            var 
target jQuery(this);

            if (
isTouch)
            {
                
target
                    
.bind('touchstart' + (suffix '.' suffix ''), function() {
                        if (!
isTapLocked)
                        {
                            
isTapLocked true;
                            if (
_settings.mobileUI_tapDelay > -1)
                                
tapId window.setTimeout(function() { window.clearTimeout(tapId); isTapLocked false; }, _settings.mobileUI_tapDelay);
                        }
                    })
                    .
bind('touchend' + (suffix '.' suffix ''), function(e) {
                        if (
isTapLocked)
                        {
                            
isTapLocked false;
                            
window.clearTimeout(tapId);
                            (
f)(e);
                        }
                    });
                    
                if (
noMove)
                    
target
                        
.bind('touchmove' + (suffix '.' suffix ''), function(e) {
                            
isTapLocked false;
                            
window.clearTimeout(tapId);
                        });
                    
            }
            else
                
target.bind('click' + (suffix '.' suffix ''), f);

            return 
target;
        };

        
jQuery.fn.untap_5grid = function(suffix) {
            var 
target jQuery(this);
            
            if (
isTouch)
            {
                
target
                    
.unbind('touchstart' + (suffix '.' suffix ''))
                    .
unbind('touchend' + (suffix '.' suffix ''))
                    .
unbind('touchmove' + (suffix '.' suffix ''));
            }
            else
                
target.unbind('click' + (suffix '.' suffix ''));
                
            return 
target;
        };
        
    
// Shortcut methods
        
headQueue.pushI_5grid = function(s) { headQueue.push({ type'i'value}); };
        
headQueue.pushE_5grid = function(s) { headQueue.push({ type'e'value}); }; 
        
headQueue.process_5grid = function() {
            var 
doE;
            if (
document.createStyleSheet)
                
doE = function(s) { document.createStyleSheet(s); };
            else
                
doE = function(s) { _head.append('<link rel="stylesheet" href="' '" />'); };

            for (
x in headQueue)
            {
                if (
headQueue[x].type == 'i')
                    
_head.append('<style>' headQueue[x].value '</style>');
                else if (
headQueue[x].type == 'e')
                    (
doE)(headQueue[x].value);
            }
        };
        
jQuery.fn.disableSelection_5grid = function() { return jQuery(this).css('user-select''none').css('-khtml-user-select''none').css('-moz-user-select''none').css('-o-user-select''none').css('-webkit-user-select''none'); }
        
jQuery.fn.enableSelection_5grid = function() { return jQuery(this).css('user-select''auto').css('-khtml-user-select''auto').css('-moz-user-select''auto').css('-o-user-select''auto').css('-webkit-user-select''auto'); }
        
jQuery.fn.accelerate_5grid = function() { return jQuery(this).css('-webkit-transform''translateZ(0)').css('-webkit-backface-visibility''hidden').css('-webkit-perspective''500'); }

    
// Determine settings
        // DOM fix
            
document.getElementsByTagName('script');

        
// Get base URL, query string
            
jQuery('script').filter(function() { return this.src.match(/5grid/init.js/); }).first();
            
x.attr('src').split('?');
            
baseURL y[0].replace(/5grid/init.js/, '');

        
// Override settings
            
if (y.length 1)
            {
                
y[1].split('&');
                for (
v in x)
                {
                    
x[v].split('=');
                    
wk w[0].replace(/./, '_');
                    
wv w[1];
                    
                    
// Thanks, @cmsalvado! :)
                    
if (!isNaN(parseFloat(wv)) && isFinite(wv))
                        
wv parseInt(wv);
                    
                    
_settings[wk] = wv;
                }
            }
    
    
// Debug settings
        
if (_settings.debug_noExtLoad == 1)
            
headQueue.pushE_5grid = function(s) { };
    
    
// Determine viewing modes
        
doDesktop doMobile doFluid do1000px do1200px doMobileOnly false;
        
_settings.use.split(',');
        
        if (
jQuery.inArray('fluid'v) > -1)
            
doFluid true;
        if (
jQuery.inArray('desktop'v) > -1)
            
doDesktop true;
        if (
jQuery.inArray('1000px'v) > -1)
            
do1000px true;
        if (
jQuery.inArray('1200px'v) > -1)
            
do1200px true;
        if (
jQuery.inArray('mobile'v) > -1)
            
doMobile true;

        if (
doMobile && !doFluid && !do1000px && !do1200px && !doDesktop)
            
doMobileOnly true;

    
// Apply workarounds for broken/old browsers

        // Android, Webkit <= 534
            
if (navigator.userAgent.match(/Android.+AppleWebKit/534/))
            {
                
_settings.mobileUI_titleBarFixed 0;
                
_settings.mobileUI_orientationDelay 750;
            }

        
// iOS <= 5
            
if (navigator.userAgent.match(/([0-9]+)_([0-9._]+) like Mac OS X/))
            {
                var 
version RegExp.$1;

                if (
version <= 5)
                    
_settings.mobileUI_titleBarFixed 0;
            }

        
// IE <= 8
            
if (navigator.userAgent.match(/MSIE ([0-9]+)./))
            {
                var 
version RegExp.$1;

                
// HTML5 Shiv
                    
if (version 9)
                        
_head.append('<script type="text/javascript" src="' baseURL '5grid/html5shiv.js" />');

                
// Versions that don't support CSS3 pseudo classes
                    
if (version 8)
                    {
                        
jQuery(function() {
                            
jQuery('.5grid, .5grid-layout, .do-5grid').after('<div style="clear: both;"></div>');
                            
jQuery('.5grid-layout').css('position''relative');
                            
jQuery('.5grid, .do-5grid').css('position''relative');
                            
jQuery('.5grid > .row > :first-child, .5grid-layout > .row > :first-child, .do-5grid > .row > :first-child').css('margin-left''0');
                            
jQuery('.5grid > .row:first-child, .5grid-layout > .row:first-child, .do-5grid > .row:first-child').css('margin-top''0');
                            
jQuery('.5grid > .row:last-child, .5grid-layout > .row:last-child, .do-5grid > .row:last-child').css('margin-bottom''0');
                        });
                    }
            }

    
// Insert stylesheets
        
headQueue.pushE_5grid(baseURL '5grid/core.css')
        
headQueue.pushE_5grid(baseURL _settings.prefix '.css');

/*********************/
/* Responsive        */
/*********************/

    
(function() {
        var    
ww _window.width(),
            
sw screen.width,
            
orientation window.orientation,
            
devicePixelRatio = (window.devicePixelRatio window.devicePixelRatio 1);

        
// Adjustments
            // Scale breakpoints using device pixel ratio
                
_settings.breakpoint_1000px _settings.breakpoint_1000px devicePixelRatio;
                
_settings.breakpoint_mobile _settings.breakpoint_mobile devicePixelRatio;

            
// Always use device's width regardless of orientation
                
if (screen.width screen.height
                
&&    Math.abs(orientation) == 90)
                    
sw screen.height;

            
// Get real screen width on iOS devices
                
if (navigator.userAgent.match(/(iPod|iPhone|iPad)/))
                    
sw sw devicePixelRatio;

        
// Mobile (exclusive)
            
if ((doMobile && (ww <= _settings.breakpoint_mobile || sw <= _settings.breakpoint_mobile)) || doMobileOnly)
            {
                
_5grid.isMobile true;
                
_head.prepend('<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />');
                
headQueue.pushE_5grid(baseURL '5grid/core-mobile.css');
                
                if (
_settings.mobileUI == 1)
                {
                    
_settings.mobileUI_force 1;

                    if (
_settings.mobileUI_theme != 'none')
                    {
                        
headQueue.pushE_5grid(baseURL '5grid/mobileUI-' _settings.mobileUI_theme '.css');

                        if (
_settings.mobileUI_themeTitleBarColor)
                            
headQueue.pushI_5grid('#mobileUI-site-titlebar { background-color: ' _settings.mobileUI_themeTitleBarColor '; }');

                        if (
_settings.mobileUI_themeNavColor)
                            
headQueue.pushI_5grid('#mobileUI-site-nav { background-color: ' _settings.mobileUI_themeNavColor '; }');
                    }
                }

                
headQueue.pushE_5grid(baseURL _settings.prefix '-mobile.css');
            }
        
// Other
            
else
            {
                
// Fluid (exclusive)
                    
if (doFluid)
                    {
                        
_5grid.isFluid true;
                        
_head.prepend('<meta name="viewport" content="width=' _settings.viewport_is1200px '" />');
                        
headQueue.pushE_5grid(baseURL '5grid/core-desktop.css');
                        
headQueue.pushE_5grid(baseURL '5grid/core-fluid.css');
                        
headQueue.pushE_5grid(baseURL _settings.prefix '-fluid.css');
                    }
                
// Desktop
                    
else if (doDesktop)
                    {
                        
_5grid.isDesktop true;
                        
headQueue.pushE_5grid(baseURL '5grid/core-desktop.css');
                        
headQueue.pushE_5grid(baseURL _settings.prefix '-desktop.css');
                    
                        
// 1200px
                            
if (ww >= _settings.breakpoint_1000px)
                            {
                                
_5grid.is1200px true;
                                
_head.prepend('<meta name="viewport" content="width=' _settings.viewport_is1200px '" />');
                                
headQueue.pushE_5grid(baseURL '5grid/core-1200px.css');
                                
                                
// Load 1200px stylesheet if 1200px was explicitly enabled
                                    
if (do1200px)
                                        
headQueue.pushE_5grid(baseURL _settings.prefix '-1200px.css');
                            }
                        
// 1000px
                            
else
                            {
                                
_5grid.is1000px true;
                                
_head.prepend('<meta name="viewport" content="width=' _settings.viewport_is1000px '" />');
                                
headQueue.pushE_5grid(baseURL '5grid/core-1000px.css');

                                
// Load 1000px stylesheet if 1000px was explicitly enabled
                                    
if (do1000px)
                                        
headQueue.pushE_5grid(baseURL _settings.prefix '-1000px.css');
                            }
                    }
                
// Other
                    
else
                    {
                        
// 1000px (exclusive)
                            
if (do1000px && (ww _settings.breakpoint_1000px || !do1200px))
                            {
                                
_5grid.isDesktop true;
                                
_5grid.is1000px true;
                                
_head.prepend('<meta name="viewport" content="width=' _settings.viewport_is1000px '" />');
                                
headQueue.pushE_5grid(baseURL '5grid/core-desktop.css');
                                
headQueue.pushE_5grid(baseURL '5grid/core-1000px.css');
                                
headQueue.pushE_5grid(baseURL _settings.prefix '-1000px.css');
                            }
                        
// 1200px (exclusive)
                            
else if (do1200px && (ww >= _settings.breakpoint_1000px || !do1000px))
                            {
                                
_5grid.isDesktop true;
                                
_5grid.is1200px true;
                                
_head.prepend('<meta name="viewport" content="width=' _settings.viewport_is1200px '" />');
                                
headQueue.pushE_5grid(baseURL '5grid/core-desktop.css');
                                
headQueue.pushE_5grid(baseURL '5grid/core-1200px.css');
                                
headQueue.pushE_5grid(baseURL _settings.prefix '-1200px.css');
                            }
                    }
            }

        
jQuery(function() {
            var 
_body jQuery('body');

            if (
_5grid.isFluid)
                
_body.addClass('is-fluid');
            if (
_5grid.isDesktop)
                
_body.addClass('is-desktop');
            if (
_5grid.is1000px)
                
_body.addClass('is-1000px');
            if (
_5grid.is1200px)
                
_body.addClass('is-1200px');
            if (
_5grid.isMobile)
                
_body.addClass('is-mobile');
            
            
jQuery('.5grid-layout').addClass('5grid'); 
        });
    })();

/*********************/
/* MobileUI          */
/*********************/

    
if (_settings.mobileUI_force == 1)
        
jQuery(function() {
            var    
_body jQuery('body'),
                
_viewer,
                
_wrapper,
                
_nav,
                
_nav_inner,
                
_opener,
                
_titlebar,
                
_content;
            var    
speed _settings.mobileUI_slideSpeed,
                
easing 'swing',
                
ww _window.width(),
                
wh _window.height(),
                
_nav_isActing false,
                
_nav_isOpen false;
        
            
_body.wrapInner('<div id="mobileUI-site-content" />');
            
_body.wrapInner('<div id="mobileUI-site-wrapper" />');
            
_body.wrapInner('<div id="mobileUI-site-viewer" />');
        
            
// Move primary content
                
var    _main_content jQuery('.mobileUI-main-content'),
                    
_main_content_target jQuery('.mobileUI-main-content-target');
                
                if (
_main_content.length 0)
                    if (
_main_content_target.length 0)
                        
_main_content.prependTo(_main_content_target);
                    else
                        
_main_content.prependTo(_main_content.parent());
        
            
// Get site name, nav options
                
var    jQuery('.mobileUI-site-name'), site_name = (x.length x.html() : ''),
                    
site_nav_options = new Array();
                
                
jQuery('.mobileUI-site-nav a').each(function() {
                    var 
jQuery(this), indent;
                    
indent Math.max(0,t.parents('li').length 1);
                    
site_nav_options.push(
                        
'<div class="mobileUI-site-nav-link mobileUI-site-nav-link-depth-' indent '" xhref="' t.attr('href') + '"><span class="indent-' indent '"></span>' t.text() + '</div>'
                    
);
                });

            
// Configure elements
                
if (site_nav_options.length 0)
                {
                    
_nav_inner jQuery('<div id="mobileUI-site-nav-inner"><nav>' site_nav_options.join('') + '</nav></div>');
                    
_nav jQuery('<div id="mobileUI-site-nav"></div>');
                    
_nav_inner.appendTo(_nav);
                    
_opener jQuery('<div id="mobileUI-site-nav-opener">' _settings.mobileUI_openerText '</div>');
                }
                else
                {
                    
_nav_inner jQuery();
                    
_nav jQuery();
                    
_opener jQuery();
                }

                
_content jQuery('#mobileUI-site-content');
                
_titlebar jQuery('<div id="mobileUI-site-titlebar"><div id="mobileUI-site-title">' site_name '</div></div>');
                
_wrapper jQuery('#mobileUI-site-wrapper');
                
_viewer jQuery('#mobileUI-site-viewer');

                var    
_nav_width ww _settings.mobileUI_openerWidth,
                    
_nav_inner_pos,
                    
_content_width ww,
                    
_wrapper_width _nav_width _content_width;

                
// Wrapper
                    
_wrapper
                        
.accelerate_5grid()
                        .
css('position''absolute')
                        .
width(_wrapper_width);

                
// Nav
                    
_nav
                        
.accelerate_5grid()
                        .
width(_nav_width)
                        .
prependTo(_wrapper)
                        .
css('position''absolute')
                        .
css('left', (-_nav_width))
                        .
prepend('<div style="position: absolute; top: 0px; right: -1px; width: 1px; height: 1px;"></div>');

                    
// Inner
                        
_nav_inner
                            
.css('overflow', (isTouch 'hidden' 'auto'))
                            .
bind('touchstart', function(e) {
                                
_nav_inner_pos _nav_inner.scrollTop() + e.originalEvent.touches[0].pageY;
                            })
                            .
bind('touchmove', function(e) {
                                
e.preventDefault();
                                
e.stopPropagation();
                                
_nav_inner.scrollTop(_nav_inner_pos e.originalEvent.touches[0].pageY);
                            });

                    
// Links
                        
_nav.find('.mobileUI-site-nav-link')
                            .
disableSelection_5grid()
                            .
css('cursor''pointer')
                            .
each(function() {
                                var 
jQuery(this);
                                
t.tap_5grid(function(e) {
                                    
e.preventDefault();
                                    
e.stopPropagation();
                                
                                    if (
_nav_isOpen)
                                    {
                                        var 
href t.attr('xhref');
                                        if (
href && href.length 0)
                                            
_body.trigger('5grid_closeNav', [href]);
                                    }
                                });
                            });

                
// Opener
                    
_opener
                        
.accelerate_5grid()
                        .
css('position''absolute')
                        .
css('z-index'10001)
                        .
css('cursor''pointer')
                        .
disableSelection_5grid()
                        .
appendTo(_titlebar)
                        .
tap_5grid(function(e) {
                            
e.stopPropagation();
                            
e.preventDefault();
                            
_body.trigger('5grid_toggleNav');
                        }, 
''true);

                
// Titlebar
                    
_titlebar
                        
.accelerate_5grid()
                        .
width(_content_width)
                        .
height(_settings.mobileUI_titleBarHeight)
                        .
css('z-index'10000)
                        .
prependTo(_viewer);
                        
                    if (
_settings.mobileUI_titleBarFixed)
                    {
                        
_titlebar
                            
.bind('goActive_5grid', function() {
                                
_titlebar
                                    
.css('position''fixed')
                                    .
css('top'0)
                                    .
css('left'0);
                            })
                            .
bind('goInactive_5grid', function() {
                                
_titlebar
                                    
.css('position''absolute')
                                    .
css('top'_window.scrollTop())
                                    .
css('left'_nav.width);
                            })
                            .
trigger('goActive_5grid');
                    }
                    else
                    {
                        
_titlebar
                            
.css('position''absolute')
                            .
css('top'_window.scrollTop())
                            .
css('left'_nav.width);
                    }

                
// Content
                    
_content
                        
.width(_content_width)
                        .
css('position''relative');
                        
                    if (
_settings.mobileUI_titleBarOverlaid)
                        
_content
                            
.bind('resize', function() { _viewer.height(_content.height()); });
                    else
                        
_content
                            
.css('padding-top'_settings.mobileUI_titleBarHeight)
                            .
bind('resize', function() { _viewer.height(_content.height() + _settings.mobileUI_titleBarHeight); });

                
// Viewer
                    
_viewer
                        
.css('position''absolute')
                        .
css('overflow''hidden')
                        .
width(_content_width)
                        .
height(_content.height() + _settings.mobileUI_titleBarHeight);

                
// Body
                    
_body
                        
.bind('5grid_toggleNav', function() {
                            if (
_nav_isOpen)
                                
_body.trigger('5grid_closeNav');
                            else
                                
_body.trigger('5grid_openNav');
                        })
                        .
bind('5grid_openNav', function() {
                            
                            
// Check locking
                                
if (isLocked)
                                    return 
true;
                                
                                
isLocked true;

                            
// Mark nav as acting
                                
_nav_isActing true;

                            
// Disable scrolling
                                
_body
                                    
.bind('touchstart.5grid_nav_block', function(e) {
                                        
e.stopPropagation();
                                        
e.preventDefault();
                                    });
                                    
                                
_window
                                    
.bind('scroll.5grid_nav_block', function(e) {
                                        
e.preventDefault();
                                        
e.stopPropagation();
                                        
                                        if (
_nav_isOpen)
                                            
_body.trigger('5grid_closeNav', [nulltrue]);
                                    });

                            
// Reposition nav
                                
_nav
                                    
.css('top'_window.scrollTop());

                                
_nav_inner
                                    
.height(window.innerHeight _settings.mobileUI_navInnerPad)
                                    .
scrollTop(0);

                            
// Deactivate titlebar
                                
_titlebar
                                    
.trigger('goInactive_5grid');

                            
// Animate
                                
_wrapper.add(_titlebar)
                                    .
animate({ left_nav_width }, speedeasing, function() {
                                        
// Unlock
                                            
isLocked false;
                                        
                                        
// Correct body position (in case it was still scrolling when the nav opened)
                                            
var parseInt(_nav.css('top'));
                                            if (
0)
                                                
_window.scrollTop(parseInt(_nav.css('top')));
                                        
                                        
// Mark nav as open, unmark as acting
                                            
window.setTimeout(function() {
                                                
_nav_isOpen true;
                                                
_nav_isActing false;
                                            }, 
300);
                                        
                                        
// Add close event to content
                                            
_content
                                                
.tap_5grid(function(e) {
                                                    
e.preventDefault();
                                                    
e.stopPropagation();
                                                    
_body.trigger('5grid_closeNav');
                                                }, 
'5grid_nav_cclose');
                        
                                        
// Trigger event
                                            
_5grid.trigger('mobileUINavOpen');
                                    });
                        })
                        .
bind('5grid_closeNav', function(eurlfast) {
                            
                            
// Check locking
                                
if (isLocked)
                                    return 
true;

                                
isLocked true;

                            
// Mark nav as acting
                                
_nav_isActing true;

                            
// Remove close event from content
                                
_content.untap_5grid('5grid_nav_cclose');

                            
// Animate
                                
_wrapper.add(_titlebar)
                                    .
animate({ left}, (fast speed), easing, function() {
                                        
                                        
// Reactivate titlebar
                                            
_titlebar
                                                
.trigger('goActive_5grid');

                                        
// Trigger event
                                            
_5grid.trigger('mobileUINavclose');

                                        
// Unlock
                                            
isLocked false;
                                        
                                        
// Re-enable scrolling
                                            
_body.unbind('touchstart.5grid_nav_block');
                                            
_window.unbind('touchmove.5grid_nav_block');

                                        
// Mark nav as closed, unmark as acting
                                            
_nav_isOpen false;
                                            
_nav_isActing false;
                                        
                                        
// If a URL was passed, go to it
                                            
if (url)
                                                
window.setTimeout(function() {
                                                    
window.location.href url;
                                                }, 
150);
                                    });
                        });

                    
// Window
                        
_window
                            
.bind('orientationchange', function(e) {
                                
window.setTimeout(function() {
                                    
ww _window.width();
                                    
                                    
// Recalculate widths
                                        
_nav_width ww _settings.mobileUI_openerWidth;
                                        
_content_width ww;
                                        
_wrapper_width _nav_width _content_width;

                                    
// Resize
                                        
_wrapper.width(_wrapper_width);
                                        
_content.width(_content_width);
                                        
_nav
                                            
.css('left', (-_nav_width))
                                            .
width(_nav_width);

                                        
_titlebar.width(ww);
                                        
_viewer.width(ww);

                                    
// Trigger event
                                        
_5grid.trigger('orientationChange');
                                
                                }, 
_settings.mobileUI_orientationDelay);
                            });

            
// Remove mobileUI-hide elements
                
jQuery('.mobileUI-hide').remove();
                
            
// Remove address bar
                
if (_settings.mobileUI_hideAddressBar == 1)
                    
_window.load(function() {
                        if (
_window.scrollTop() == 0)
                            
window.scrollTo(01);
                    });
        });

/*********************/
/* Head Queue        */
/*********************/

    
headQueue.process_5grid();
    
_5grid.isReady true;

    
jQuery(function() {
        if (
_5grid.readyWait)
            
jQuery(window).load(function() { _5grid.readyCheck(); });
        else
            
_5grid.readyCheck();
    });

})();
?>
Онлайн: 0
Реклама