');
- }
-
- item.inlineElement = el;
- return el;
- }
-
- mfp.updateStatus('ready');
- mfp._parseMarkup(template, {}, item);
- return template;
- }
- }
-});
-
-/*>>inline*/
-
-/*>>ajax*/
-var AJAX_NS = 'ajax',
- _ajaxCur,
- _removeAjaxCursor = function() {
- if(_ajaxCur) {
- _body.removeClass(_ajaxCur);
- }
- },
- _destroyAjaxRequest = function() {
- _removeAjaxCursor();
- if(mfp.req) {
- mfp.req.abort();
- }
- };
-
-$.magnificPopup.registerModule(AJAX_NS, {
-
- options: {
- settings: null,
- cursor: 'mfp-ajax-cur',
- tError: '
The content could not be loaded.'
- },
-
- proto: {
- initAjax: function() {
- mfp.types.push(AJAX_NS);
- _ajaxCur = mfp.st.ajax.cursor;
-
- _mfpOn(CLOSE_EVENT+'.'+AJAX_NS, _destroyAjaxRequest);
- _mfpOn('BeforeChange.' + AJAX_NS, _destroyAjaxRequest);
- },
- getAjax: function(item) {
-
- if(_ajaxCur)
- _body.addClass(_ajaxCur);
-
- mfp.updateStatus('loading');
-
- var opts = $.extend({
- url: item.src,
- success: function(data, textStatus, jqXHR) {
- var temp = {
- data:data,
- xhr:jqXHR
- };
-
- _mfpTrigger('ParseAjax', temp);
-
- mfp.appendContent( $(temp.data), AJAX_NS );
-
- item.finished = true;
-
- _removeAjaxCursor();
-
- mfp._setFocus();
-
- setTimeout(function() {
- mfp.wrap.addClass(READY_CLASS);
- }, 16);
-
- mfp.updateStatus('ready');
-
- _mfpTrigger('AjaxContentAdded');
- },
- error: function() {
- _removeAjaxCursor();
- item.finished = item.loadError = true;
- mfp.updateStatus('error', mfp.st.ajax.tError.replace('%url%', item.src));
- }
- }, mfp.st.ajax.settings);
-
- mfp.req = $.ajax(opts);
-
- return '';
- }
- }
-});
-
-
-
-
-
-
-
-/*>>ajax*/
-
-/*>>image*/
-var _imgInterval,
- _getTitle = function(item) {
- if(item.data && item.data.title !== undefined)
- return item.data.title;
-
- var src = mfp.st.image.titleSrc;
-
- if(src) {
- if($.isFunction(src)) {
- return src.call(mfp, item);
- } else if(item.el) {
- return item.el.attr(src) || '';
- }
- }
- return '';
- };
-
-$.magnificPopup.registerModule('image', {
-
- options: {
- markup: '
',
- cursor: 'mfp-zoom-out-cur',
- titleSrc: 'title',
- verticalFit: true,
- tError: '
The image could not be loaded.'
- },
-
- proto: {
- initImage: function() {
- var imgSt = mfp.st.image,
- ns = '.image';
-
- mfp.types.push('image');
-
- _mfpOn(OPEN_EVENT+ns, function() {
- if(mfp.currItem.type === 'image' && imgSt.cursor) {
- _body.addClass(imgSt.cursor);
- }
- });
-
- _mfpOn(CLOSE_EVENT+ns, function() {
- if(imgSt.cursor) {
- _body.removeClass(imgSt.cursor);
- }
- _window.off('resize' + EVENT_NS);
- });
-
- _mfpOn('Resize'+ns, mfp.resizeImage);
- if(mfp.isLowIE) {
- _mfpOn('AfterChange', mfp.resizeImage);
- }
- },
- resizeImage: function() {
- var item = mfp.currItem;
- if(!item || !item.img) return;
-
- if(mfp.st.image.verticalFit) {
- var decr = 0;
- // fix box-sizing in ie7/8
- if(mfp.isLowIE) {
- decr = parseInt(item.img.css('padding-top'), 10) + parseInt(item.img.css('padding-bottom'),10);
- }
- item.img.css('max-height', mfp.wH-decr);
- }
- },
- _onImageHasSize: function(item) {
- if(item.img) {
-
- item.hasSize = true;
-
- if(_imgInterval) {
- clearInterval(_imgInterval);
- }
-
- item.isCheckingImgSize = false;
-
- _mfpTrigger('ImageHasSize', item);
-
- if(item.imgHidden) {
- if(mfp.content)
- mfp.content.removeClass('mfp-loading');
-
- item.imgHidden = false;
- }
-
- }
- },
-
- /**
- * Function that loops until the image has size to display elements that rely on it asap
- */
- findImageSize: function(item) {
-
- var counter = 0,
- img = item.img[0],
- mfpSetInterval = function(delay) {
-
- if(_imgInterval) {
- clearInterval(_imgInterval);
- }
- // decelerating interval that checks for size of an image
- _imgInterval = setInterval(function() {
- if(img.naturalWidth > 0) {
- mfp._onImageHasSize(item);
- return;
- }
-
- if(counter > 200) {
- clearInterval(_imgInterval);
- }
-
- counter++;
- if(counter === 3) {
- mfpSetInterval(10);
- } else if(counter === 40) {
- mfpSetInterval(50);
- } else if(counter === 100) {
- mfpSetInterval(500);
- }
- }, delay);
- };
-
- mfpSetInterval(1);
- },
-
- getImage: function(item, template) {
-
- var guard = 0,
-
- // image load complete handler
- onLoadComplete = function() {
- if(item) {
- if (item.img[0].complete) {
- item.img.off('.mfploader');
-
- if(item === mfp.currItem){
- mfp._onImageHasSize(item);
-
- mfp.updateStatus('ready');
- }
-
- item.hasSize = true;
- item.loaded = true;
-
- _mfpTrigger('ImageLoadComplete');
-
- }
- else {
- // if image complete check fails 200 times (20 sec), we assume that there was an error.
- guard++;
- if(guard < 200) {
- setTimeout(onLoadComplete,100);
- } else {
- onLoadError();
- }
- }
- }
- },
-
- // image error handler
- onLoadError = function() {
- if(item) {
- item.img.off('.mfploader');
- if(item === mfp.currItem){
- mfp._onImageHasSize(item);
- mfp.updateStatus('error', imgSt.tError.replace('%url%', item.src) );
- }
-
- item.hasSize = true;
- item.loaded = true;
- item.loadError = true;
- }
- },
- imgSt = mfp.st.image;
-
-
- var el = template.find('.mfp-img');
- if(el.length) {
- var img = document.createElement('img');
- img.className = 'mfp-img';
- item.img = $(img).on('load.mfploader', onLoadComplete).on('error.mfploader', onLoadError);
- img.src = item.src;
-
- // without clone() "error" event is not firing when IMG is replaced by new IMG
- // TODO: find a way to avoid such cloning
- if(el.is('img')) {
- item.img = item.img.clone();
- }
- if(item.img[0].naturalWidth > 0) {
- item.hasSize = true;
- }
- }
-
- mfp._parseMarkup(template, {
- title: _getTitle(item),
- img_replaceWith: item.img
- }, item);
-
- mfp.resizeImage();
-
- if(item.hasSize) {
- if(_imgInterval) clearInterval(_imgInterval);
-
- if(item.loadError) {
- template.addClass('mfp-loading');
- mfp.updateStatus('error', imgSt.tError.replace('%url%', item.src) );
- } else {
- template.removeClass('mfp-loading');
- mfp.updateStatus('ready');
- }
- return template;
- }
-
- mfp.updateStatus('loading');
- item.loading = true;
-
- if(!item.hasSize) {
- item.imgHidden = true;
- template.addClass('mfp-loading');
- mfp.findImageSize(item);
- }
-
- return template;
- }
- }
-});
-
-
-
-/*>>image*/
-
-/*>>zoom*/
-var hasMozTransform,
- getHasMozTransform = function() {
- if(hasMozTransform === undefined) {
- hasMozTransform = document.createElement('p').style.MozTransform !== undefined;
- }
- return hasMozTransform;
- };
-
-$.magnificPopup.registerModule('zoom', {
-
- options: {
- enabled: false,
- easing: 'ease-in-out',
- duration: 300,
- opener: function(element) {
- return element.is('img') ? element : element.find('img');
- }
- },
-
- proto: {
-
- initZoom: function() {
- var zoomSt = mfp.st.zoom,
- ns = '.zoom',
- image;
-
- if(!zoomSt.enabled || !mfp.supportsTransition) {
- return;
- }
-
- var duration = zoomSt.duration,
- getElToAnimate = function(image) {
- var newImg = image.clone().removeAttr('style').removeAttr('class').addClass('mfp-animated-image'),
- transition = 'all '+(zoomSt.duration/1000)+'s ' + zoomSt.easing,
- cssObj = {
- position: 'fixed',
- zIndex: 9999,
- left: 0,
- top: 0,
- '-webkit-backface-visibility': 'hidden'
- },
- t = 'transition';
-
- cssObj['-webkit-'+t] = cssObj['-moz-'+t] = cssObj['-o-'+t] = cssObj[t] = transition;
-
- newImg.css(cssObj);
- return newImg;
- },
- showMainContent = function() {
- mfp.content.css('visibility', 'visible');
- },
- openTimeout,
- animatedImg;
-
- _mfpOn('BuildControls'+ns, function() {
- if(mfp._allowZoom()) {
-
- clearTimeout(openTimeout);
- mfp.content.css('visibility', 'hidden');
-
- // Basically, all code below does is clones existing image, puts in on top of the current one and animated it
-
- image = mfp._getItemToZoom();
-
- if(!image) {
- showMainContent();
- return;
- }
-
- animatedImg = getElToAnimate(image);
-
- animatedImg.css( mfp._getOffset() );
-
- mfp.wrap.append(animatedImg);
-
- openTimeout = setTimeout(function() {
- animatedImg.css( mfp._getOffset( true ) );
- openTimeout = setTimeout(function() {
-
- showMainContent();
-
- setTimeout(function() {
- animatedImg.remove();
- image = animatedImg = null;
- _mfpTrigger('ZoomAnimationEnded');
- }, 16); // avoid blink when switching images
-
- }, duration); // this timeout equals animation duration
-
- }, 16); // by adding this timeout we avoid short glitch at the beginning of animation
-
-
- // Lots of timeouts...
- }
- });
- _mfpOn(BEFORE_CLOSE_EVENT+ns, function() {
- if(mfp._allowZoom()) {
-
- clearTimeout(openTimeout);
-
- mfp.st.removalDelay = duration;
-
- if(!image) {
- image = mfp._getItemToZoom();
- if(!image) {
- return;
- }
- animatedImg = getElToAnimate(image);
- }
-
-
- animatedImg.css( mfp._getOffset(true) );
- mfp.wrap.append(animatedImg);
- mfp.content.css('visibility', 'hidden');
-
- setTimeout(function() {
- animatedImg.css( mfp._getOffset() );
- }, 16);
- }
-
- });
-
- _mfpOn(CLOSE_EVENT+ns, function() {
- if(mfp._allowZoom()) {
- showMainContent();
- if(animatedImg) {
- animatedImg.remove();
- }
- image = null;
- }
- });
- },
-
- _allowZoom: function() {
- return mfp.currItem.type === 'image';
- },
-
- _getItemToZoom: function() {
- if(mfp.currItem.hasSize) {
- return mfp.currItem.img;
- } else {
- return false;
- }
- },
-
- // Get element postion relative to viewport
- _getOffset: function(isLarge) {
- var el;
- if(isLarge) {
- el = mfp.currItem.img;
- } else {
- el = mfp.st.zoom.opener(mfp.currItem.el || mfp.currItem);
- }
-
- var offset = el.offset();
- var paddingTop = parseInt(el.css('padding-top'),10);
- var paddingBottom = parseInt(el.css('padding-bottom'),10);
- offset.top -= ( $(window).scrollTop() - paddingTop );
-
-
- /*
-
- Animating left + top + width/height looks glitchy in Firefox, but perfect in Chrome. And vice-versa.
-
- */
- var obj = {
- width: el.width(),
- // fix Zepto height+padding issue
- height: (_isJQ ? el.innerHeight() : el[0].offsetHeight) - paddingBottom - paddingTop
- };
-
- // I hate to do this, but there is no another option
- if( getHasMozTransform() ) {
- obj['-moz-transform'] = obj['transform'] = 'translate(' + offset.left + 'px,' + offset.top + 'px)';
- } else {
- obj.left = offset.left;
- obj.top = offset.top;
- }
- return obj;
- }
-
- }
-});
-
-
-
-/*>>zoom*/
-
-/*>>iframe*/
-
-var IFRAME_NS = 'iframe',
- _emptyPage = '//about:blank',
-
- _fixIframeBugs = function(isShowing) {
- if(mfp.currTemplate[IFRAME_NS]) {
- var el = mfp.currTemplate[IFRAME_NS].find('iframe');
- if(el.length) {
- // reset src after the popup is closed to avoid "video keeps playing after popup is closed" bug
- if(!isShowing) {
- el[0].src = _emptyPage;
- }
-
- // IE8 black screen bug fix
- if(mfp.isIE8) {
- el.css('display', isShowing ? 'block' : 'none');
- }
- }
- }
- };
-
-$.magnificPopup.registerModule(IFRAME_NS, {
-
- options: {
- markup: '
',
-
- srcAction: 'iframe_src',
-
- // we don't care and support only one default type of URL by default
- patterns: {
- youtube: {
- index: 'youtube.com',
- id: 'v=',
- src: '//www.youtube.com/embed/%id%?autoplay=1'
- },
- vimeo: {
- index: 'vimeo.com/',
- id: '/',
- src: '//player.vimeo.com/video/%id%?autoplay=1'
- },
- gmaps: {
- index: '//maps.google.',
- src: '%id%&output=embed'
- }
- }
- },
-
- proto: {
- initIframe: function() {
- mfp.types.push(IFRAME_NS);
-
- _mfpOn('BeforeChange', function(e, prevType, newType) {
- if(prevType !== newType) {
- if(prevType === IFRAME_NS) {
- _fixIframeBugs(); // iframe if removed
- } else if(newType === IFRAME_NS) {
- _fixIframeBugs(true); // iframe is showing
- }
- }// else {
- // iframe source is switched, don't do anything
- //}
- });
-
- _mfpOn(CLOSE_EVENT + '.' + IFRAME_NS, function() {
- _fixIframeBugs();
- });
- },
-
- getIframe: function(item, template) {
- var embedSrc = item.src;
- var iframeSt = mfp.st.iframe;
-
- $.each(iframeSt.patterns, function() {
- if(embedSrc.indexOf( this.index ) > -1) {
- if(this.id) {
- if(typeof this.id === 'string') {
- embedSrc = embedSrc.substr(embedSrc.lastIndexOf(this.id)+this.id.length, embedSrc.length);
- } else {
- embedSrc = this.id.call( this, embedSrc );
- }
- }
- embedSrc = this.src.replace('%id%', embedSrc );
- return false; // break;
- }
- });
-
- var dataObj = {};
- if(iframeSt.srcAction) {
- dataObj[iframeSt.srcAction] = embedSrc;
- }
- mfp._parseMarkup(template, dataObj, item);
-
- mfp.updateStatus('ready');
-
- return template;
- }
- }
-});
-
-
-
-/*>>iframe*/
-
-/*>>gallery*/
-/**
- * Get looped index depending on number of slides
- */
-var _getLoopedId = function(index) {
- var numSlides = mfp.items.length;
- if(index > numSlides - 1) {
- return index - numSlides;
- } else if(index < 0) {
- return numSlides + index;
- }
- return index;
- },
- _replaceCurrTotal = function(text, curr, total) {
- return text.replace(/%curr%/gi, curr + 1).replace(/%total%/gi, total);
- };
-
-$.magnificPopup.registerModule('gallery', {
-
- options: {
- enabled: false,
- arrowMarkup: '
',
- preload: [0,2],
- navigateByImgClick: true,
- arrows: true,
-
- tPrev: 'Previous (Left arrow key)',
- tNext: 'Next (Right arrow key)',
- tCounter: '%curr% of %total%'
- },
-
- proto: {
- initGallery: function() {
-
- var gSt = mfp.st.gallery,
- ns = '.mfp-gallery',
- supportsFastClick = Boolean($.fn.mfpFastClick);
-
- mfp.direction = true; // true - next, false - prev
-
- if(!gSt || !gSt.enabled ) return false;
-
- _wrapClasses += ' mfp-gallery';
-
- _mfpOn(OPEN_EVENT+ns, function() {
-
- if(gSt.navigateByImgClick) {
- mfp.wrap.on('click'+ns, '.mfp-img', function() {
- if(mfp.items.length > 1) {
- mfp.next();
- return false;
- }
- });
- }
-
- _document.on('keydown'+ns, function(e) {
- if (e.keyCode === 37) {
- mfp.prev();
- } else if (e.keyCode === 39) {
- mfp.next();
- }
- });
- });
-
- _mfpOn('UpdateStatus'+ns, function(e, data) {
- if(data.text) {
- data.text = _replaceCurrTotal(data.text, mfp.currItem.index, mfp.items.length);
- }
- });
-
- _mfpOn(MARKUP_PARSE_EVENT+ns, function(e, element, values, item) {
- var l = mfp.items.length;
- values.counter = l > 1 ? _replaceCurrTotal(gSt.tCounter, item.index, l) : '';
- });
-
- _mfpOn('BuildControls' + ns, function() {
- if(mfp.items.length > 1 && gSt.arrows && !mfp.arrowLeft) {
- var markup = gSt.arrowMarkup,
- arrowLeft = mfp.arrowLeft = $( markup.replace(/%title%/gi, gSt.tPrev).replace(/%dir%/gi, 'left') ).addClass(PREVENT_CLOSE_CLASS),
- arrowRight = mfp.arrowRight = $( markup.replace(/%title%/gi, gSt.tNext).replace(/%dir%/gi, 'right') ).addClass(PREVENT_CLOSE_CLASS);
-
- var eName = supportsFastClick ? 'mfpFastClick' : 'click';
- arrowLeft[eName](function() {
- mfp.prev();
- });
- arrowRight[eName](function() {
- mfp.next();
- });
-
- // Polyfill for :before and :after (adds elements with classes mfp-a and mfp-b)
- if(mfp.isIE7) {
- _getEl('b', arrowLeft[0], false, true);
- _getEl('a', arrowLeft[0], false, true);
- _getEl('b', arrowRight[0], false, true);
- _getEl('a', arrowRight[0], false, true);
- }
-
- mfp.container.append(arrowLeft.add(arrowRight));
- }
- });
-
- _mfpOn(CHANGE_EVENT+ns, function() {
- if(mfp._preloadTimeout) clearTimeout(mfp._preloadTimeout);
-
- mfp._preloadTimeout = setTimeout(function() {
- mfp.preloadNearbyImages();
- mfp._preloadTimeout = null;
- }, 16);
- });
-
-
- _mfpOn(CLOSE_EVENT+ns, function() {
- _document.off(ns);
- mfp.wrap.off('click'+ns);
-
- if(mfp.arrowLeft && supportsFastClick) {
- mfp.arrowLeft.add(mfp.arrowRight).destroyMfpFastClick();
- }
- mfp.arrowRight = mfp.arrowLeft = null;
- });
-
- },
- next: function() {
- mfp.direction = true;
- mfp.index = _getLoopedId(mfp.index + 1);
- mfp.updateItemHTML();
- },
- prev: function() {
- mfp.direction = false;
- mfp.index = _getLoopedId(mfp.index - 1);
- mfp.updateItemHTML();
- },
- goTo: function(newIndex) {
- mfp.direction = (newIndex >= mfp.index);
- mfp.index = newIndex;
- mfp.updateItemHTML();
- },
- preloadNearbyImages: function() {
- var p = mfp.st.gallery.preload,
- preloadBefore = Math.min(p[0], mfp.items.length),
- preloadAfter = Math.min(p[1], mfp.items.length),
- i;
-
- for(i = 1; i <= (mfp.direction ? preloadAfter : preloadBefore); i++) {
- mfp._preloadItem(mfp.index+i);
- }
- for(i = 1; i <= (mfp.direction ? preloadBefore : preloadAfter); i++) {
- mfp._preloadItem(mfp.index-i);
- }
- },
- _preloadItem: function(index) {
- index = _getLoopedId(index);
-
- if(mfp.items[index].preloaded) {
- return;
- }
-
- var item = mfp.items[index];
- if(!item.parsed) {
- item = mfp.parseEl( index );
- }
-
- _mfpTrigger('LazyLoad', item);
-
- if(item.type === 'image') {
- item.img = $('
').on('load.mfploader', function() {
- item.hasSize = true;
- }).on('error.mfploader', function() {
- item.hasSize = true;
- item.loadError = true;
- _mfpTrigger('LazyLoadError', item);
- }).attr('src', item.src);
- }
-
-
- item.preloaded = true;
- }
- }
-});
-
-/*
-Touch Support that might be implemented some day
-
-addSwipeGesture: function() {
- var startX,
- moved,
- multipleTouches;
-
- return;
-
- var namespace = '.mfp',
- addEventNames = function(pref, down, move, up, cancel) {
- mfp._tStart = pref + down + namespace;
- mfp._tMove = pref + move + namespace;
- mfp._tEnd = pref + up + namespace;
- mfp._tCancel = pref + cancel + namespace;
- };
-
- if(window.navigator.msPointerEnabled) {
- addEventNames('MSPointer', 'Down', 'Move', 'Up', 'Cancel');
- } else if('ontouchstart' in window) {
- addEventNames('touch', 'start', 'move', 'end', 'cancel');
- } else {
- return;
- }
- _window.on(mfp._tStart, function(e) {
- var oE = e.originalEvent;
- multipleTouches = moved = false;
- startX = oE.pageX || oE.changedTouches[0].pageX;
- }).on(mfp._tMove, function(e) {
- if(e.originalEvent.touches.length > 1) {
- multipleTouches = e.originalEvent.touches.length;
- } else {
- //e.preventDefault();
- moved = true;
- }
- }).on(mfp._tEnd + ' ' + mfp._tCancel, function(e) {
- if(moved && !multipleTouches) {
- var oE = e.originalEvent,
- diff = startX - (oE.pageX || oE.changedTouches[0].pageX);
-
- if(diff > 20) {
- mfp.next();
- } else if(diff < -20) {
- mfp.prev();
- }
- }
- });
-},
-*/
-
-
-/*>>gallery*/
-
-/*>>retina*/
-
-var RETINA_NS = 'retina';
-
-$.magnificPopup.registerModule(RETINA_NS, {
- options: {
- replaceSrc: function(item) {
- return item.src.replace(/\.\w+$/, function(m) { return '@2x' + m; });
- },
- ratio: 1 // Function or number. Set to 1 to disable.
- },
- proto: {
- initRetina: function() {
- if(window.devicePixelRatio > 1) {
-
- var st = mfp.st.retina,
- ratio = st.ratio;
-
- ratio = !isNaN(ratio) ? ratio : ratio();
-
- if(ratio > 1) {
- _mfpOn('ImageHasSize' + '.' + RETINA_NS, function(e, item) {
- item.img.css({
- 'max-width': item.img[0].naturalWidth / ratio,
- 'width': '100%'
- });
- });
- _mfpOn('ElementParse' + '.' + RETINA_NS, function(e, item) {
- item.src = st.replaceSrc(item, ratio);
- });
- }
- }
-
- }
- }
-});
-
-/*>>retina*/
-
-/*>>fastclick*/
-/**
- * FastClick event implementation. (removes 300ms delay on touch devices)
- * Based on https://developers.google.com/mobile/articles/fast_buttons
- *
- * You may use it outside the Magnific Popup by calling just:
- *
- * $('.your-el').mfpFastClick(function() {
- * console.log('Clicked!');
- * });
- *
- * To unbind:
- * $('.your-el').destroyMfpFastClick();
- *
- *
- * Note that it's a very basic and simple implementation, it blocks ghost click on the same element where it was bound.
- * If you need something more advanced, use plugin by FT Labs https://github.com/ftlabs/fastclick
- *
- */
-
-(function() {
- var ghostClickDelay = 1000,
- supportsTouch = 'ontouchstart' in window,
- unbindTouchMove = function() {
- _window.off('touchmove'+ns+' touchend'+ns);
- },
- eName = 'mfpFastClick',
- ns = '.'+eName;
-
-
- // As Zepto.js doesn't have an easy way to add custom events (like jQuery), so we implement it in this way
- $.fn.mfpFastClick = function(callback) {
-
- return $(this).each(function() {
-
- var elem = $(this),
- lock;
-
- if( supportsTouch ) {
-
- var timeout,
- startX,
- startY,
- pointerMoved,
- point,
- numPointers;
-
- elem.on('touchstart' + ns, function(e) {
- pointerMoved = false;
- numPointers = 1;
-
- point = e.originalEvent ? e.originalEvent.touches[0] : e.touches[0];
- startX = point.clientX;
- startY = point.clientY;
-
- _window.on('touchmove'+ns, function(e) {
- point = e.originalEvent ? e.originalEvent.touches : e.touches;
- numPointers = point.length;
- point = point[0];
- if (Math.abs(point.clientX - startX) > 10 ||
- Math.abs(point.clientY - startY) > 10) {
- pointerMoved = true;
- unbindTouchMove();
- }
- }).on('touchend'+ns, function(e) {
- unbindTouchMove();
- if(pointerMoved || numPointers > 1) {
- return;
- }
- lock = true;
- e.preventDefault();
- clearTimeout(timeout);
- timeout = setTimeout(function() {
- lock = false;
- }, ghostClickDelay);
- callback();
- });
- });
-
- }
-
- elem.on('click' + ns, function() {
- if(!lock) {
- callback();
- }
- });
- });
- };
-
- $.fn.destroyMfpFastClick = function() {
- $(this).off('touchstart' + ns + ' click' + ns);
- if(supportsTouch) _window.off('touchmove'+ns+' touchend'+ns);
- };
-})();
-
-/*>>fastclick*/
- _checkInstance(); })(window.jQuery || window.Zepto);
\ No newline at end of file
diff --git a/js/jquery.min.js b/js/jquery.min.js
deleted file mode 100644
index c218eba..0000000
--- a/js/jquery.min.js
+++ /dev/null
@@ -1,3566 +0,0 @@
-/*! jQuery v1.8.3 jquery.com | jquery.org/license */
-(function(e, t) {
- function _(e) {
- var t = M[e] = {};
- return v.each(e.split(y), function(e, n) {
- t[n] = !0
- }), t
- }
-
- function H(e, n, r) {
- if (r === t && e.nodeType === 1) {
- var i = "data-" + n.replace(P, "-$1").toLowerCase();
- r = e.getAttribute(i);
- if (typeof r == "string") {
- try {
- r = r === "true" ? !0 : r === "false" ? !1 : r === "null" ? null : +r + "" === r ? +r : D.test(r) ? v.parseJSON(r) : r
- } catch (s) {}
- v.data(e, n, r)
- } else r = t
- }
- return r
- }
-
- function B(e) {
- var t;
- for (t in e) {
- if (t === "data" && v.isEmptyObject(e[t])) continue;
- if (t !== "toJSON") return !1
- }
- return !0
- }
-
- function et() {
- return !1
- }
-
- function tt() {
- return !0
- }
-
- function ut(e) {
- return !e || !e.parentNode || e.parentNode.nodeType === 11
- }
-
- function at(e, t) {
- do e = e[t]; while (e && e.nodeType !== 1);
- return e
- }
-
- function ft(e, t, n) {
- t = t || 0;
- if (v.isFunction(t)) return v.grep(e, function(e, r) {
- var i = !!t.call(e, r, e);
- return i === n
- });
- if (t.nodeType) return v.grep(e, function(e, r) {
- return e === t === n
- });
- if (typeof t == "string") {
- var r = v.grep(e, function(e) {
- return e.nodeType === 1
- });
- if (it.test(t)) return v.filter(t, r, !n);
- t = v.filter(t, r)
- }
- return v.grep(e, function(e, r) {
- return v.inArray(e, t) >= 0 === n
- })
- }
-
- function lt(e) {
- var t = ct.split("|"),
- n = e.createDocumentFragment();
- if (n.createElement)
- while (t.length) n.createElement(t.pop());
- return n
- }
-
- function Lt(e, t) {
- return e.getElementsByTagName(t)[0] || e.appendChild(e.ownerDocument.createElement(t))
- }
-
- function At(e, t) {
- if (t.nodeType !== 1 || !v.hasData(e)) return;
- var n, r, i, s = v._data(e),
- o = v._data(t, s),
- u = s.events;
- if (u) {
- delete o.handle, o.events = {};
- for (n in u)
- for (r = 0, i = u[n].length; r < i; r++) v.event.add(t, n, u[n][r])
- }
- o.data && (o.data = v.extend({}, o.data))
- }
-
- function Ot(e, t) {
- var n;
- if (t.nodeType !== 1) return;
- t.clearAttributes && t.clearAttributes(), t.mergeAttributes && t.mergeAttributes(e), n = t.nodeName.toLowerCase(), n === "object" ? (t.parentNode && (t.outerHTML = e.outerHTML), v.support.html5Clone && e.innerHTML && !v.trim(t.innerHTML) && (t.innerHTML = e.innerHTML)) : n === "input" && Et.test(e.type) ? (t.defaultChecked = t.checked = e.checked, t.value !== e.value && (t.value = e.value)) : n === "option" ? t.selected = e.defaultSelected : n === "input" || n === "textarea" ? t.defaultValue = e.defaultValue : n === "script" && t.text !== e.text && (t.text = e.text), t.removeAttribute(v.expando)
- }
-
- function Mt(e) {
- return typeof e.getElementsByTagName != "undefined" ? e.getElementsByTagName("*") : typeof e.querySelectorAll != "undefined" ? e.querySelectorAll("*") : []
- }
-
- function _t(e) {
- Et.test(e.type) && (e.defaultChecked = e.checked)
- }
-
- function Qt(e, t) {
- if (t in e) return t;
- var n = t.charAt(0).toUpperCase() + t.slice(1),
- r = t,
- i = Jt.length;
- while (i--) {
- t = Jt[i] + n;
- if (t in e) return t
- }
- return r
- }
-
- function Gt(e, t) {
- return e = t || e, v.css(e, "display") === "none" || !v.contains(e.ownerDocument, e)
- }
-
- function Yt(e, t) {
- var n, r, i = [],
- s = 0,
- o = e.length;
- for (; s < o; s++) {
- n = e[s];
- if (!n.style) continue;
- i[s] = v._data(n, "olddisplay"), t ? (!i[s] && n.style.display === "none" && (n.style.display = ""), n.style.display === "" && Gt(n) && (i[s] = v._data(n, "olddisplay", nn(n.nodeName)))) : (r = Dt(n, "display"), !i[s] && r !== "none" && v._data(n, "olddisplay", r))
- }
- for (s = 0; s < o; s++) {
- n = e[s];
- if (!n.style) continue;
- if (!t || n.style.display === "none" || n.style.display === "") n.style.display = t ? i[s] || "" : "none"
- }
- return e
- }
-
- function Zt(e, t, n) {
- var r = Rt.exec(t);
- return r ? Math.max(0, r[1] - (n || 0)) + (r[2] || "px") : t
- }
-
- function en(e, t, n, r) {
- var i = n === (r ? "border" : "content") ? 4 : t === "width" ? 1 : 0,
- s = 0;
- for (; i < 4; i += 2) n === "margin" && (s += v.css(e, n + $t[i], !0)), r ? (n === "content" && (s -= parseFloat(Dt(e, "padding" + $t[i])) || 0), n !== "margin" && (s -= parseFloat(Dt(e, "border" + $t[i] + "Width")) || 0)) : (s += parseFloat(Dt(e, "padding" + $t[i])) || 0, n !== "padding" && (s += parseFloat(Dt(e, "border" + $t[i] + "Width")) || 0));
- return s
- }
-
- function tn(e, t, n) {
- var r = t === "width" ? e.offsetWidth : e.offsetHeight,
- i = !0,
- s = v.support.boxSizing && v.css(e, "boxSizing") === "border-box";
- if (r <= 0 || r == null) {
- r = Dt(e, t);
- if (r < 0 || r == null) r = e.style[t];
- if (Ut.test(r)) return r;
- i = s && (v.support.boxSizingReliable || r === e.style[t]), r = parseFloat(r) || 0
- }
- return r + en(e, t, n || (s ? "border" : "content"), i) + "px"
- }
-
- function nn(e) {
- if (Wt[e]) return Wt[e];
- var t = v("<" + e + ">").appendTo(i.body),
- n = t.css("display");
- t.remove();
- if (n === "none" || n === "") {
- Pt = i.body.appendChild(Pt || v.extend(i.createElement("iframe"), {
- frameBorder: 0,
- width: 0,
- height: 0
- }));
- if (!Ht || !Pt.createElement) Ht = (Pt.contentWindow || Pt.contentDocument).document, Ht.write(""), Ht.close();
- t = Ht.body.appendChild(Ht.createElement(e)), n = Dt(t, "display"), i.body.removeChild(Pt)
- }
- return Wt[e] = n, n
- }
-
- function fn(e, t, n, r) {
- var i;
- if (v.isArray(t)) v.each(t, function(t, i) {
- n || sn.test(e) ? r(e, i) : fn(e + "[" + (typeof i == "object" ? t : "") + "]", i, n, r)
- });
- else if (!n && v.type(t) === "object")
- for (i in t) fn(e + "[" + i + "]", t[i], n, r);
- else r(e, t)
- }
-
- function Cn(e) {
- return function(t, n) {
- typeof t != "string" && (n = t, t = "*");
- var r, i, s, o = t.toLowerCase().split(y),
- u = 0,
- a = o.length;
- if (v.isFunction(n))
- for (; u < a; u++) r = o[u], s = /^\+/.test(r), s && (r = r.substr(1) || "*"), i = e[r] = e[r] || [], i[s ? "unshift" : "push"](n)
- }
- }
-
- function kn(e, n, r, i, s, o) {
- s = s || n.dataTypes[0], o = o || {}, o[s] = !0;
- var u, a = e[s],
- f = 0,
- l = a ? a.length : 0,
- c = e === Sn;
- for (; f < l && (c || !u); f++) u = a[f](n, r, i), typeof u == "string" && (!c || o[u] ? u = t : (n.dataTypes.unshift(u), u = kn(e, n, r, i, u, o)));
- return (c || !u) && !o["*"] && (u = kn(e, n, r, i, "*", o)), u
- }
-
- function Ln(e, n) {
- var r, i, s = v.ajaxSettings.flatOptions || {};
- for (r in n) n[r] !== t && ((s[r] ? e : i || (i = {}))[r] = n[r]);
- i && v.extend(!0, e, i)
- }
-
- function An(e, n, r) {
- var i, s, o, u, a = e.contents,
- f = e.dataTypes,
- l = e.responseFields;
- for (s in l) s in r && (n[l[s]] = r[s]);
- while (f[0] === "*") f.shift(), i === t && (i = e.mimeType || n.getResponseHeader("content-type"));
- if (i)
- for (s in a)
- if (a[s] && a[s].test(i)) {
- f.unshift(s);
- break
- } if (f[0] in r) o = f[0];
- else {
- for (s in r) {
- if (!f[0] || e.converters[s + " " + f[0]]) {
- o = s;
- break
- }
- u || (u = s)
- }
- o = o || u
- }
- if (o) return o !== f[0] && f.unshift(o), r[o]
- }
-
- function On(e, t) {
- var n, r, i, s, o = e.dataTypes.slice(),
- u = o[0],
- a = {},
- f = 0;
- e.dataFilter && (t = e.dataFilter(t, e.dataType));
- if (o[1])
- for (n in e.converters) a[n.toLowerCase()] = e.converters[n];
- for (; i = o[++f];)
- if (i !== "*") {
- if (u !== "*" && u !== i) {
- n = a[u + " " + i] || a["* " + i];
- if (!n)
- for (r in a) {
- s = r.split(" ");
- if (s[1] === i) {
- n = a[u + " " + s[0]] || a["* " + s[0]];
- if (n) {
- n === !0 ? n = a[r] : a[r] !== !0 && (i = s[0], o.splice(f--, 0, i));
- break
- }
- }
- }
- if (n !== !0)
- if (n && e["throws"]) t = n(t);
- else try {
- t = n(t)
- } catch (l) {
- return {
- state: "parsererror",
- error: n ? l : "No conversion from " + u + " to " + i
- }
- }
- }
- u = i
- } return {
- state: "success",
- data: t
- }
- }
-
- function Fn() {
- try {
- return new e.XMLHttpRequest
- } catch (t) {}
- }
-
- function In() {
- try {
- return new e.ActiveXObject("Microsoft.XMLHTTP")
- } catch (t) {}
- }
-
- function $n() {
- return setTimeout(function() {
- qn = t
- }, 0), qn = v.now()
- }
-
- function Jn(e, t) {
- v.each(t, function(t, n) {
- var r = (Vn[t] || []).concat(Vn["*"]),
- i = 0,
- s = r.length;
- for (; i < s; i++)
- if (r[i].call(e, t, n)) return
- })
- }
-
- function Kn(e, t, n) {
- var r, i = 0,
- s = 0,
- o = Xn.length,
- u = v.Deferred().always(function() {
- delete a.elem
- }),
- a = function() {
- var t = qn || $n(),
- n = Math.max(0, f.startTime + f.duration - t),
- r = n / f.duration || 0,
- i = 1 - r,
- s = 0,
- o = f.tweens.length;
- for (; s < o; s++) f.tweens[s].run(i);
- return u.notifyWith(e, [f, i, n]), i < 1 && o ? n : (u.resolveWith(e, [f]), !1)
- },
- f = u.promise({
- elem: e,
- props: v.extend({}, t),
- opts: v.extend(!0, {
- specialEasing: {}
- }, n),
- originalProperties: t,
- originalOptions: n,
- startTime: qn || $n(),
- duration: n.duration,
- tweens: [],
- createTween: function(t, n, r) {
- var i = v.Tween(e, f.opts, t, n, f.opts.specialEasing[t] || f.opts.easing);
- return f.tweens.push(i), i
- },
- stop: function(t) {
- var n = 0,
- r = t ? f.tweens.length : 0;
- for (; n < r; n++) f.tweens[n].run(1);
- return t ? u.resolveWith(e, [f, t]) : u.rejectWith(e, [f, t]), this
- }
- }),
- l = f.props;
- Qn(l, f.opts.specialEasing);
- for (; i < o; i++) {
- r = Xn[i].call(f, e, l, f.opts);
- if (r) return r
- }
- return Jn(f, l), v.isFunction(f.opts.start) && f.opts.start.call(e, f), v.fx.timer(v.extend(a, {
- anim: f,
- queue: f.opts.queue,
- elem: e
- })), f.progress(f.opts.progress).done(f.opts.done, f.opts.complete).fail(f.opts.fail).always(f.opts.always)
- }
-
- function Qn(e, t) {
- var n, r, i, s, o;
- for (n in e) {
- r = v.camelCase(n), i = t[r], s = e[n], v.isArray(s) && (i = s[1], s = e[n] = s[0]), n !== r && (e[r] = s, delete e[n]), o = v.cssHooks[r];
- if (o && "expand" in o) {
- s = o.expand(s), delete e[r];
- for (n in s) n in e || (e[n] = s[n], t[n] = i)
- } else t[r] = i
- }
- }
-
- function Gn(e, t, n) {
- var r, i, s, o, u, a, f, l, c, h = this,
- p = e.style,
- d = {},
- m = [],
- g = e.nodeType && Gt(e);
- n.queue || (l = v._queueHooks(e, "fx"), l.unqueued == null && (l.unqueued = 0, c = l.empty.fire, l.empty.fire = function() {
- l.unqueued || c()
- }), l.unqueued++, h.always(function() {
- h.always(function() {
- l.unqueued--, v.queue(e, "fx").length || l.empty.fire()
- })
- })), e.nodeType === 1 && ("height" in t || "width" in t) && (n.overflow = [p.overflow, p.overflowX, p.overflowY], v.css(e, "display") === "inline" && v.css(e, "float") === "none" && (!v.support.inlineBlockNeedsLayout || nn(e.nodeName) === "inline" ? p.display = "inline-block" : p.zoom = 1)), n.overflow && (p.overflow = "hidden", v.support.shrinkWrapBlocks || h.done(function() {
- p.overflow = n.overflow[0], p.overflowX = n.overflow[1], p.overflowY = n.overflow[2]
- }));
- for (r in t) {
- s = t[r];
- if (Un.exec(s)) {
- delete t[r], a = a || s === "toggle";
- if (s === (g ? "hide" : "show")) continue;
- m.push(r)
- }
- }
- o = m.length;
- if (o) {
- u = v._data(e, "fxshow") || v._data(e, "fxshow", {}), "hidden" in u && (g = u.hidden), a && (u.hidden = !g), g ? v(e).show() : h.done(function() {
- v(e).hide()
- }), h.done(function() {
- var t;
- v.removeData(e, "fxshow", !0);
- for (t in d) v.style(e, t, d[t])
- });
- for (r = 0; r < o; r++) i = m[r], f = h.createTween(i, g ? u[i] : 0), d[i] = u[i] || v.style(e, i), i in u || (u[i] = f.start, g && (f.end = f.start, f.start = i === "width" || i === "height" ? 1 : 0))
- }
- }
-
- function Yn(e, t, n, r, i) {
- return new Yn.prototype.init(e, t, n, r, i)
- }
-
- function Zn(e, t) {
- var n, r = {
- height: e
- },
- i = 0;
- t = t ? 1 : 0;
- for (; i < 4; i += 2 - t) n = $t[i], r["margin" + n] = r["padding" + n] = e;
- return t && (r.opacity = r.width = e), r
- }
-
- function tr(e) {
- return v.isWindow(e) ? e : e.nodeType === 9 ? e.defaultView || e.parentWindow : !1
- }
- var n, r, i = e.document,
- s = e.location,
- o = e.navigator,
- u = e.jQuery,
- a = e.$,
- f = Array.prototype.push,
- l = Array.prototype.slice,
- c = Array.prototype.indexOf,
- h = Object.prototype.toString,
- p = Object.prototype.hasOwnProperty,
- d = String.prototype.trim,
- v = function(e, t) {
- return new v.fn.init(e, t, n)
- },
- m = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,
- g = /\S/,
- y = /\s+/,
- b = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
- w = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
- E = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,
- S = /^[\],:{}\s]*$/,
- x = /(?:^|:|,)(?:\s*\[)+/g,
- T = /\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,
- N = /"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,
- C = /^-ms-/,
- k = /-([\da-z])/gi,
- L = function(e, t) {
- return (t + "").toUpperCase()
- },
- A = function() {
- i.addEventListener ? (i.removeEventListener("DOMContentLoaded", A, !1), v.ready()) : i.readyState === "complete" && (i.detachEvent("onreadystatechange", A), v.ready())
- },
- O = {};
- v.fn = v.prototype = {
- constructor: v,
- init: function(e, n, r) {
- var s, o, u, a;
- if (!e) return this;
- if (e.nodeType) return this.context = this[0] = e, this.length = 1, this;
- if (typeof e == "string") {
- e.charAt(0) === "<" && e.charAt(e.length - 1) === ">" && e.length >= 3 ? s = [null, e, null] : s = w.exec(e);
- if (s && (s[1] || !n)) {
- if (s[1]) return n = n instanceof v ? n[0] : n, a = n && n.nodeType ? n.ownerDocument || n : i, e = v.parseHTML(s[1], a, !0), E.test(s[1]) && v.isPlainObject(n) && this.attr.call(e, n, !0), v.merge(this, e);
- o = i.getElementById(s[2]);
- if (o && o.parentNode) {
- if (o.id !== s[2]) return r.find(e);
- this.length = 1, this[0] = o
- }
- return this.context = i, this.selector = e, this
- }
- return !n || n.jquery ? (n || r).find(e) : this.constructor(n).find(e)
- }
- return v.isFunction(e) ? r.ready(e) : (e.selector !== t && (this.selector = e.selector, this.context = e.context), v.makeArray(e, this))
- },
- selector: "",
- jquery: "1.8.3",
- length: 0,
- size: function() {
- return this.length
- },
- toArray: function() {
- return l.call(this)
- },
- get: function(e) {
- return e == null ? this.toArray() : e < 0 ? this[this.length + e] : this[e]
- },
- pushStack: function(e, t, n) {
- var r = v.merge(this.constructor(), e);
- return r.prevObject = this, r.context = this.context, t === "find" ? r.selector = this.selector + (this.selector ? " " : "") + n : t && (r.selector = this.selector + "." + t + "(" + n + ")"), r
- },
- each: function(e, t) {
- return v.each(this, e, t)
- },
- ready: function(e) {
- return v.ready.promise().done(e), this
- },
- eq: function(e) {
- return e = +e, e === -1 ? this.slice(e) : this.slice(e, e + 1)
- },
- first: function() {
- return this.eq(0)
- },
- last: function() {
- return this.eq(-1)
- },
- slice: function() {
- return this.pushStack(l.apply(this, arguments), "slice", l.call(arguments).join(","))
- },
- map: function(e) {
- return this.pushStack(v.map(this, function(t, n) {
- return e.call(t, n, t)
- }))
- },
- end: function() {
- return this.prevObject || this.constructor(null)
- },
- push: f,
- sort: [].sort,
- splice: [].splice
- }, v.fn.init.prototype = v.fn, v.extend = v.fn.extend = function() {
- var e, n, r, i, s, o, u = arguments[0] || {},
- a = 1,
- f = arguments.length,
- l = !1;
- typeof u == "boolean" && (l = u, u = arguments[1] || {}, a = 2), typeof u != "object" && !v.isFunction(u) && (u = {}), f === a && (u = this, --a);
- for (; a < f; a++)
- if ((e = arguments[a]) != null)
- for (n in e) {
- r = u[n], i = e[n];
- if (u === i) continue;
- l && i && (v.isPlainObject(i) || (s = v.isArray(i))) ? (s ? (s = !1, o = r && v.isArray(r) ? r : []) : o = r && v.isPlainObject(r) ? r : {}, u[n] = v.extend(l, o, i)) : i !== t && (u[n] = i)
- }
- return u
- }, v.extend({
- noConflict: function(t) {
- return e.$ === v && (e.$ = a), t && e.jQuery === v && (e.jQuery = u), v
- },
- isReady: !1,
- readyWait: 1,
- holdReady: function(e) {
- e ? v.readyWait++ : v.ready(!0)
- },
- ready: function(e) {
- if (e === !0 ? --v.readyWait : v.isReady) return;
- if (!i.body) return setTimeout(v.ready, 1);
- v.isReady = !0;
- if (e !== !0 && --v.readyWait > 0) return;
- r.resolveWith(i, [v]), v.fn.trigger && v(i).trigger("ready").off("ready")
- },
- isFunction: function(e) {
- return v.type(e) === "function"
- },
- isArray: Array.isArray || function(e) {
- return v.type(e) === "array"
- },
- isWindow: function(e) {
- return e != null && e == e.window
- },
- isNumeric: function(e) {
- return !isNaN(parseFloat(e)) && isFinite(e)
- },
- type: function(e) {
- return e == null ? String(e) : O[h.call(e)] || "object"
- },
- isPlainObject: function(e) {
- if (!e || v.type(e) !== "object" || e.nodeType || v.isWindow(e)) return !1;
- try {
- if (e.constructor && !p.call(e, "constructor") && !p.call(e.constructor.prototype, "isPrototypeOf")) return !1
- } catch (n) {
- return !1
- }
- var r;
- for (r in e);
- return r === t || p.call(e, r)
- },
- isEmptyObject: function(e) {
- var t;
- for (t in e) return !1;
- return !0
- },
- error: function(e) {
- throw new Error(e)
- },
- parseHTML: function(e, t, n) {
- var r;
- return !e || typeof e != "string" ? null : (typeof t == "boolean" && (n = t, t = 0), t = t || i, (r = E.exec(e)) ? [t.createElement(r[1])] : (r = v.buildFragment([e], t, n ? null : []), v.merge([], (r.cacheable ? v.clone(r.fragment) : r.fragment).childNodes)))
- },
- parseJSON: function(t) {
- if (!t || typeof t != "string") return null;
- t = v.trim(t);
- if (e.JSON && e.JSON.parse) return e.JSON.parse(t);
- if (S.test(t.replace(T, "@").replace(N, "]").replace(x, ""))) return (new Function("return " + t))();
- v.error("Invalid JSON: " + t)
- },
- parseXML: function(n) {
- var r, i;
- if (!n || typeof n != "string") return null;
- try {
- e.DOMParser ? (i = new DOMParser, r = i.parseFromString(n, "text/xml")) : (r = new ActiveXObject("Microsoft.XMLDOM"), r.async = "false", r.loadXML(n))
- } catch (s) {
- r = t
- }
- return (!r || !r.documentElement || r.getElementsByTagName("parsererror").length) && v.error("Invalid XML: " + n), r
- },
- noop: function() {},
- globalEval: function(t) {
- t && g.test(t) && (e.execScript || function(t) {
- e.eval.call(e, t)
- })(t)
- },
- camelCase: function(e) {
- return e.replace(C, "ms-").replace(k, L)
- },
- nodeName: function(e, t) {
- return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
- },
- each: function(e, n, r) {
- var i, s = 0,
- o = e.length,
- u = o === t || v.isFunction(e);
- if (r) {
- if (u) {
- for (i in e)
- if (n.apply(e[i], r) === !1) break
- } else
- for (; s < o;)
- if (n.apply(e[s++], r) === !1) break
- } else if (u) {
- for (i in e)
- if (n.call(e[i], i, e[i]) === !1) break
- } else
- for (; s < o;)
- if (n.call(e[s], s, e[s++]) === !1) break;
- return e
- },
- trim: d && !d.call("\ufeff\u00a0") ? function(e) {
- return e == null ? "" : d.call(e)
- } : function(e) {
- return e == null ? "" : (e + "").replace(b, "")
- },
- makeArray: function(e, t) {
- var n, r = t || [];
- return e != null && (n = v.type(e), e.length == null || n === "string" || n === "function" || n === "regexp" || v.isWindow(e) ? f.call(r, e) : v.merge(r, e)), r
- },
- inArray: function(e, t, n) {
- var r;
- if (t) {
- if (c) return c.call(t, e, n);
- r = t.length, n = n ? n < 0 ? Math.max(0, r + n) : n : 0;
- for (; n < r; n++)
- if (n in t && t[n] === e) return n
- }
- return -1
- },
- merge: function(e, n) {
- var r = n.length,
- i = e.length,
- s = 0;
- if (typeof r == "number")
- for (; s < r; s++) e[i++] = n[s];
- else
- while (n[s] !== t) e[i++] = n[s++];
- return e.length = i, e
- },
- grep: function(e, t, n) {
- var r, i = [],
- s = 0,
- o = e.length;
- n = !!n;
- for (; s < o; s++) r = !!t(e[s], s), n !== r && i.push(e[s]);
- return i
- },
- map: function(e, n, r) {
- var i, s, o = [],
- u = 0,
- a = e.length,
- f = e instanceof v || a !== t && typeof a == "number" && (a > 0 && e[0] && e[a - 1] || a === 0 || v.isArray(e));
- if (f)
- for (; u < a; u++) i = n(e[u], u, r), i != null && (o[o.length] = i);
- else
- for (s in e) i = n(e[s], s, r), i != null && (o[o.length] = i);
- return o.concat.apply([], o)
- },
- guid: 1,
- proxy: function(e, n) {
- var r, i, s;
- return typeof n == "string" && (r = e[n], n = e, e = r), v.isFunction(e) ? (i = l.call(arguments, 2), s = function() {
- return e.apply(n, i.concat(l.call(arguments)))
- }, s.guid = e.guid = e.guid || v.guid++, s) : t
- },
- access: function(e, n, r, i, s, o, u) {
- var a, f = r == null,
- l = 0,
- c = e.length;
- if (r && typeof r == "object") {
- for (l in r) v.access(e, n, l, r[l], 1, o, i);
- s = 1
- } else if (i !== t) {
- a = u === t && v.isFunction(i), f && (a ? (a = n, n = function(e, t, n) {
- return a.call(v(e), n)
- }) : (n.call(e, i), n = null));
- if (n)
- for (; l < c; l++) n(e[l], r, a ? i.call(e[l], l, n(e[l], r)) : i, u);
- s = 1
- }
- return s ? e : f ? n.call(e) : c ? n(e[0], r) : o
- },
- now: function() {
- return (new Date).getTime()
- }
- }), v.ready.promise = function(t) {
- if (!r) {
- r = v.Deferred();
- if (i.readyState === "complete") setTimeout(v.ready, 1);
- else if (i.addEventListener) i.addEventListener("DOMContentLoaded", A, !1), e.addEventListener("load", v.ready, !1);
- else {
- i.attachEvent("onreadystatechange", A), e.attachEvent("onload", v.ready);
- var n = !1;
- try {
- n = e.frameElement == null && i.documentElement
- } catch (s) {}
- n && n.doScroll && function o() {
- if (!v.isReady) {
- try {
- n.doScroll("left")
- } catch (e) {
- return setTimeout(o, 50)
- }
- v.ready()
- }
- }()
- }
- }
- return r.promise(t)
- }, v.each("Boolean Number String Function Array Date RegExp Object".split(" "), function(e, t) {
- O["[object " + t + "]"] = t.toLowerCase()
- }), n = v(i);
- var M = {};
- v.Callbacks = function(e) {
- e = typeof e == "string" ? M[e] || _(e) : v.extend({}, e);
- var n, r, i, s, o, u, a = [],
- f = !e.once && [],
- l = function(t) {
- n = e.memory && t, r = !0, u = s || 0, s = 0, o = a.length, i = !0;
- for (; a && u < o; u++)
- if (a[u].apply(t[0], t[1]) === !1 && e.stopOnFalse) {
- n = !1;
- break
- } i = !1, a && (f ? f.length && l(f.shift()) : n ? a = [] : c.disable())
- },
- c = {
- add: function() {
- if (a) {
- var t = a.length;
- (function r(t) {
- v.each(t, function(t, n) {
- var i = v.type(n);
- i === "function" ? (!e.unique || !c.has(n)) && a.push(n) : n && n.length && i !== "string" && r(n)
- })
- })(arguments), i ? o = a.length : n && (s = t, l(n))
- }
- return this
- },
- remove: function() {
- return a && v.each(arguments, function(e, t) {
- var n;
- while ((n = v.inArray(t, a, n)) > -1) a.splice(n, 1), i && (n <= o && o--, n <= u && u--)
- }), this
- },
- has: function(e) {
- return v.inArray(e, a) > -1
- },
- empty: function() {
- return a = [], this
- },
- disable: function() {
- return a = f = n = t, this
- },
- disabled: function() {
- return !a
- },
- lock: function() {
- return f = t, n || c.disable(), this
- },
- locked: function() {
- return !f
- },
- fireWith: function(e, t) {
- return t = t || [], t = [e, t.slice ? t.slice() : t], a && (!r || f) && (i ? f.push(t) : l(t)), this
- },
- fire: function() {
- return c.fireWith(this, arguments), this
- },
- fired: function() {
- return !!r
- }
- };
- return c
- }, v.extend({
- Deferred: function(e) {
- var t = [
- ["resolve", "done", v.Callbacks("once memory"), "resolved"],
- ["reject", "fail", v.Callbacks("once memory"), "rejected"],
- ["notify", "progress", v.Callbacks("memory")]
- ],
- n = "pending",
- r = {
- state: function() {
- return n
- },
- always: function() {
- return i.done(arguments).fail(arguments), this
- },
- then: function() {
- var e = arguments;
- return v.Deferred(function(n) {
- v.each(t, function(t, r) {
- var s = r[0],
- o = e[t];
- i[r[1]](v.isFunction(o) ? function() {
- var e = o.apply(this, arguments);
- e && v.isFunction(e.promise) ? e.promise().done(n.resolve).fail(n.reject).progress(n.notify) : n[s + "With"](this === i ? n : this, [e])
- } : n[s])
- }), e = null
- }).promise()
- },
- promise: function(e) {
- return e != null ? v.extend(e, r) : r
- }
- },
- i = {};
- return r.pipe = r.then, v.each(t, function(e, s) {
- var o = s[2],
- u = s[3];
- r[s[1]] = o.add, u && o.add(function() {
- n = u
- }, t[e ^ 1][2].disable, t[2][2].lock), i[s[0]] = o.fire, i[s[0] + "With"] = o.fireWith
- }), r.promise(i), e && e.call(i, i), i
- },
- when: function(e) {
- var t = 0,
- n = l.call(arguments),
- r = n.length,
- i = r !== 1 || e && v.isFunction(e.promise) ? r : 0,
- s = i === 1 ? e : v.Deferred(),
- o = function(e, t, n) {
- return function(r) {
- t[e] = this, n[e] = arguments.length > 1 ? l.call(arguments) : r, n === u ? s.notifyWith(t, n) : --i || s.resolveWith(t, n)
- }
- },
- u, a, f;
- if (r > 1) {
- u = new Array(r), a = new Array(r), f = new Array(r);
- for (; t < r; t++) n[t] && v.isFunction(n[t].promise) ? n[t].promise().done(o(t, f, n)).fail(s.reject).progress(o(t, a, u)) : --i
- }
- return i || s.resolveWith(f, n), s.promise()
- }
- }), v.support = function() {
- var t, n, r, s, o, u, a, f, l, c, h, p = i.createElement("div");
- p.setAttribute("className", "t"), p.innerHTML = "
a", n = p.getElementsByTagName("*"), r = p.getElementsByTagName("a")[0];
- if (!n || !r || !n.length) return {};
- s = i.createElement("select"), o = s.appendChild(i.createElement("option")), u = p.getElementsByTagName("input")[0], r.style.cssText = "top:1px;float:left;opacity:.5", t = {
- leadingWhitespace: p.firstChild.nodeType === 3,
- tbody: !p.getElementsByTagName("tbody").length,
- htmlSerialize: !!p.getElementsByTagName("link").length,
- style: /top/.test(r.getAttribute("style")),
- hrefNormalized: r.getAttribute("href") === "/a",
- opacity: /^0.5/.test(r.style.opacity),
- cssFloat: !!r.style.cssFloat,
- checkOn: u.value === "on",
- optSelected: o.selected,
- getSetAttribute: p.className !== "t",
- enctype: !!i.createElement("form").enctype,
- html5Clone: i.createElement("nav").cloneNode(!0).outerHTML !== "<:nav>",
- boxModel: i.compatMode === "CSS1Compat",
- submitBubbles: !0,
- changeBubbles: !0,
- focusinBubbles: !1,
- deleteExpando: !0,
- noCloneEvent: !0,
- inlineBlockNeedsLayout: !1,
- shrinkWrapBlocks: !1,
- reliableMarginRight: !0,
- boxSizingReliable: !0,
- pixelPosition: !1
- }, u.checked = !0, t.noCloneChecked = u.cloneNode(!0).checked, s.disabled = !0, t.optDisabled = !o.disabled;
- try {
- delete p.test
- } catch (d) {
- t.deleteExpando = !1
- }!p.addEventListener && p.attachEvent && p.fireEvent && (p.attachEvent("onclick", h = function() {
- t.noCloneEvent = !1
- }), p.cloneNode(!0).fireEvent("onclick"), p.detachEvent("onclick", h)), u = i.createElement("input"), u.value = "t", u.setAttribute("type", "radio"), t.radioValue = u.value === "t", u.setAttribute("checked", "checked"), u.setAttribute("name", "t"), p.appendChild(u), a = i.createDocumentFragment(), a.appendChild(p.lastChild), t.checkClone = a.cloneNode(!0).cloneNode(!0).lastChild.checked, t.appendChecked = u.checked, a.removeChild(u), a.appendChild(p);
- if (p.attachEvent)
- for (l in {
- submit: !0,
- change: !0,
- focusin: !0
- }) f = "on" + l, c = f in p, c || (p.setAttribute(f, "return;"), c = typeof p[f] == "function"), t[l + "Bubbles"] = c;
- return v(function() {
- var n, r, s, o, u = "padding:0;margin:0;border:0;display:block;overflow:hidden;",
- a = i.getElementsByTagName("body")[0];
- if (!a) return;
- n = i.createElement("div"), n.style.cssText = "visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px", a.insertBefore(n, a.firstChild), r = i.createElement("div"), n.appendChild(r), r.innerHTML = "
", s = r.getElementsByTagName("td"), s[0].style.cssText = "padding:0;margin:0;border:0;display:none", c = s[0].offsetHeight === 0, s[0].style.display = "", s[1].style.display = "none", t.reliableHiddenOffsets = c && s[0].offsetHeight === 0, r.innerHTML = "", r.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;", t.boxSizing = r.offsetWidth === 4, t.doesNotIncludeMarginInBodyOffset = a.offsetTop !== 1, e.getComputedStyle && (t.pixelPosition = (e.getComputedStyle(r, null) || {}).top !== "1%", t.boxSizingReliable = (e.getComputedStyle(r, null) || {
- width: "4px"
- }).width === "4px", o = i.createElement("div"), o.style.cssText = r.style.cssText = u, o.style.marginRight = o.style.width = "0", r.style.width = "1px", r.appendChild(o), t.reliableMarginRight = !parseFloat((e.getComputedStyle(o, null) || {}).marginRight)), typeof r.style.zoom != "undefined" && (r.innerHTML = "", r.style.cssText = u + "width:1px;padding:1px;display:inline;zoom:1", t.inlineBlockNeedsLayout = r.offsetWidth === 3, r.style.display = "block", r.style.overflow = "visible", r.innerHTML = "
", r.firstChild.style.width = "5px", t.shrinkWrapBlocks = r.offsetWidth !== 3, n.style.zoom = 1), a.removeChild(n), n = r = s = o = null
- }), a.removeChild(p), n = r = s = o = u = a = p = null, t
- }();
- var D = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
- P = /([A-Z])/g;
- v.extend({
- cache: {},
- deletedIds: [],
- uuid: 0,
- expando: "jQuery" + (v.fn.jquery + Math.random()).replace(/\D/g, ""),
- noData: {
- embed: !0,
- object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
- applet: !0
- },
- hasData: function(e) {
- return e = e.nodeType ? v.cache[e[v.expando]] : e[v.expando], !!e && !B(e)
- },
- data: function(e, n, r, i) {
- if (!v.acceptData(e)) return;
- var s, o, u = v.expando,
- a = typeof n == "string",
- f = e.nodeType,
- l = f ? v.cache : e,
- c = f ? e[u] : e[u] && u;
- if ((!c || !l[c] || !i && !l[c].data) && a && r === t) return;
- c || (f ? e[u] = c = v.deletedIds.pop() || v.guid++ : c = u), l[c] || (l[c] = {}, f || (l[c].toJSON = v.noop));
- if (typeof n == "object" || typeof n == "function") i ? l[c] = v.extend(l[c], n) : l[c].data = v.extend(l[c].data, n);
- return s = l[c], i || (s.data || (s.data = {}), s = s.data), r !== t && (s[v.camelCase(n)] = r), a ? (o = s[n], o == null && (o = s[v.camelCase(n)])) : o = s, o
- },
- removeData: function(e, t, n) {
- if (!v.acceptData(e)) return;
- var r, i, s, o = e.nodeType,
- u = o ? v.cache : e,
- a = o ? e[v.expando] : v.expando;
- if (!u[a]) return;
- if (t) {
- r = n ? u[a] : u[a].data;
- if (r) {
- v.isArray(t) || (t in r ? t = [t] : (t = v.camelCase(t), t in r ? t = [t] : t = t.split(" ")));
- for (i = 0, s = t.length; i < s; i++) delete r[t[i]];
- if (!(n ? B : v.isEmptyObject)(r)) return
- }
- }
- if (!n) {
- delete u[a].data;
- if (!B(u[a])) return
- }
- o ? v.cleanData([e], !0) : v.support.deleteExpando || u != u.window ? delete u[a] : u[a] = null
- },
- _data: function(e, t, n) {
- return v.data(e, t, n, !0)
- },
- acceptData: function(e) {
- var t = e.nodeName && v.noData[e.nodeName.toLowerCase()];
- return !t || t !== !0 && e.getAttribute("classid") === t
- }
- }), v.fn.extend({
- data: function(e, n) {
- var r, i, s, o, u, a = this[0],
- f = 0,
- l = null;
- if (e === t) {
- if (this.length) {
- l = v.data(a);
- if (a.nodeType === 1 && !v._data(a, "parsedAttrs")) {
- s = a.attributes;
- for (u = s.length; f < u; f++) o = s[f].name, o.indexOf("data-") || (o = v.camelCase(o.substring(5)), H(a, o, l[o]));
- v._data(a, "parsedAttrs", !0)
- }
- }
- return l
- }
- return typeof e == "object" ? this.each(function() {
- v.data(this, e)
- }) : (r = e.split(".", 2), r[1] = r[1] ? "." + r[1] : "", i = r[1] + "!", v.access(this, function(n) {
- if (n === t) return l = this.triggerHandler("getData" + i, [r[0]]), l === t && a && (l = v.data(a, e), l = H(a, e, l)), l === t && r[1] ? this.data(r[0]) : l;
- r[1] = n, this.each(function() {
- var t = v(this);
- t.triggerHandler("setData" + i, r), v.data(this, e, n), t.triggerHandler("changeData" + i, r)
- })
- }, null, n, arguments.length > 1, null, !1))
- },
- removeData: function(e) {
- return this.each(function() {
- v.removeData(this, e)
- })
- }
- }), v.extend({
- queue: function(e, t, n) {
- var r;
- if (e) return t = (t || "fx") + "queue", r = v._data(e, t), n && (!r || v.isArray(n) ? r = v._data(e, t, v.makeArray(n)) : r.push(n)), r || []
- },
- dequeue: function(e, t) {
- t = t || "fx";
- var n = v.queue(e, t),
- r = n.length,
- i = n.shift(),
- s = v._queueHooks(e, t),
- o = function() {
- v.dequeue(e, t)
- };
- i === "inprogress" && (i = n.shift(), r--), i && (t === "fx" && n.unshift("inprogress"), delete s.stop, i.call(e, o, s)), !r && s && s.empty.fire()
- },
- _queueHooks: function(e, t) {
- var n = t + "queueHooks";
- return v._data(e, n) || v._data(e, n, {
- empty: v.Callbacks("once memory").add(function() {
- v.removeData(e, t + "queue", !0), v.removeData(e, n, !0)
- })
- })
- }
- }), v.fn.extend({
- queue: function(e, n) {
- var r = 2;
- return typeof e != "string" && (n = e, e = "fx", r--), arguments.length < r ? v.queue(this[0], e) : n === t ? this : this.each(function() {
- var t = v.queue(this, e, n);
- v._queueHooks(this, e), e === "fx" && t[0] !== "inprogress" && v.dequeue(this, e)
- })
- },
- dequeue: function(e) {
- return this.each(function() {
- v.dequeue(this, e)
- })
- },
- delay: function(e, t) {
- return e = v.fx ? v.fx.speeds[e] || e : e, t = t || "fx", this.queue(t, function(t, n) {
- var r = setTimeout(t, e);
- n.stop = function() {
- clearTimeout(r)
- }
- })
- },
- clearQueue: function(e) {
- return this.queue(e || "fx", [])
- },
- promise: function(e, n) {
- var r, i = 1,
- s = v.Deferred(),
- o = this,
- u = this.length,
- a = function() {
- --i || s.resolveWith(o, [o])
- };
- typeof e != "string" && (n = e, e = t), e = e || "fx";
- while (u--) r = v._data(o[u], e + "queueHooks"), r && r.empty && (i++, r.empty.add(a));
- return a(), s.promise(n)
- }
- });
- var j, F, I, q = /[\t\r\n]/g,
- R = /\r/g,
- U = /^(?:button|input)$/i,
- z = /^(?:button|input|object|select|textarea)$/i,
- W = /^a(?:rea|)$/i,
- X = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
- V = v.support.getSetAttribute;
- v.fn.extend({
- attr: function(e, t) {
- return v.access(this, v.attr, e, t, arguments.length > 1)
- },
- removeAttr: function(e) {
- return this.each(function() {
- v.removeAttr(this, e)
- })
- },
- prop: function(e, t) {
- return v.access(this, v.prop, e, t, arguments.length > 1)
- },
- removeProp: function(e) {
- return e = v.propFix[e] || e, this.each(function() {
- try {
- this[e] = t, delete this[e]
- } catch (n) {}
- })
- },
- addClass: function(e) {
- var t, n, r, i, s, o, u;
- if (v.isFunction(e)) return this.each(function(t) {
- v(this).addClass(e.call(this, t, this.className))
- });
- if (e && typeof e == "string") {
- t = e.split(y);
- for (n = 0, r = this.length; n < r; n++) {
- i = this[n];
- if (i.nodeType === 1)
- if (!i.className && t.length === 1) i.className = e;
- else {
- s = " " + i.className + " ";
- for (o = 0, u = t.length; o < u; o++) s.indexOf(" " + t[o] + " ") < 0 && (s += t[o] + " ");
- i.className = v.trim(s)
- }
- }
- }
- return this
- },
- removeClass: function(e) {
- var n, r, i, s, o, u, a;
- if (v.isFunction(e)) return this.each(function(t) {
- v(this).removeClass(e.call(this, t, this.className))
- });
- if (e && typeof e == "string" || e === t) {
- n = (e || "").split(y);
- for (u = 0, a = this.length; u < a; u++) {
- i = this[u];
- if (i.nodeType === 1 && i.className) {
- r = (" " + i.className + " ").replace(q, " ");
- for (s = 0, o = n.length; s < o; s++)
- while (r.indexOf(" " + n[s] + " ") >= 0) r = r.replace(" " + n[s] + " ", " ");
- i.className = e ? v.trim(r) : ""
- }
- }
- }
- return this
- },
- toggleClass: function(e, t) {
- var n = typeof e,
- r = typeof t == "boolean";
- return v.isFunction(e) ? this.each(function(n) {
- v(this).toggleClass(e.call(this, n, this.className, t), t)
- }) : this.each(function() {
- if (n === "string") {
- var i, s = 0,
- o = v(this),
- u = t,
- a = e.split(y);
- while (i = a[s++]) u = r ? u : !o.hasClass(i), o[u ? "addClass" : "removeClass"](i)
- } else if (n === "undefined" || n === "boolean") this.className && v._data(this, "__className__", this.className), this.className = this.className || e === !1 ? "" : v._data(this, "__className__") || ""
- })
- },
- hasClass: function(e) {
- var t = " " + e + " ",
- n = 0,
- r = this.length;
- for (; n < r; n++)
- if (this[n].nodeType === 1 && (" " + this[n].className + " ").replace(q, " ").indexOf(t) >= 0) return !0;
- return !1
- },
- val: function(e) {
- var n, r, i, s = this[0];
- if (!arguments.length) {
- if (s) return n = v.valHooks[s.type] || v.valHooks[s.nodeName.toLowerCase()], n && "get" in n && (r = n.get(s, "value")) !== t ? r : (r = s.value, typeof r == "string" ? r.replace(R, "") : r == null ? "" : r);
- return
- }
- return i = v.isFunction(e), this.each(function(r) {
- var s, o = v(this);
- if (this.nodeType !== 1) return;
- i ? s = e.call(this, r, o.val()) : s = e, s == null ? s = "" : typeof s == "number" ? s += "" : v.isArray(s) && (s = v.map(s, function(e) {
- return e == null ? "" : e + ""
- })), n = v.valHooks[this.type] || v.valHooks[this.nodeName.toLowerCase()];
- if (!n || !("set" in n) || n.set(this, s, "value") === t) this.value = s
- })
- }
- }), v.extend({
- valHooks: {
- option: {
- get: function(e) {
- var t = e.attributes.value;
- return !t || t.specified ? e.value : e.text
- }
- },
- select: {
- get: function(e) {
- var t, n, r = e.options,
- i = e.selectedIndex,
- s = e.type === "select-one" || i < 0,
- o = s ? null : [],
- u = s ? i + 1 : r.length,
- a = i < 0 ? u : s ? i : 0;
- for (; a < u; a++) {
- n = r[a];
- if ((n.selected || a === i) && (v.support.optDisabled ? !n.disabled : n.getAttribute("disabled") === null) && (!n.parentNode.disabled || !v.nodeName(n.parentNode, "optgroup"))) {
- t = v(n).val();
- if (s) return t;
- o.push(t)
- }
- }
- return o
- },
- set: function(e, t) {
- var n = v.makeArray(t);
- return v(e).find("option").each(function() {
- this.selected = v.inArray(v(this).val(), n) >= 0
- }), n.length || (e.selectedIndex = -1), n
- }
- }
- },
- attrFn: {},
- attr: function(e, n, r, i) {
- var s, o, u, a = e.nodeType;
- if (!e || a === 3 || a === 8 || a === 2) return;
- if (i && v.isFunction(v.fn[n])) return v(e)[n](r);
- if (typeof e.getAttribute == "undefined") return v.prop(e, n, r);
- u = a !== 1 || !v.isXMLDoc(e), u && (n = n.toLowerCase(), o = v.attrHooks[n] || (X.test(n) ? F : j));
- if (r !== t) {
- if (r === null) {
- v.removeAttr(e, n);
- return
- }
- return o && "set" in o && u && (s = o.set(e, r, n)) !== t ? s : (e.setAttribute(n, r + ""), r)
- }
- return o && "get" in o && u && (s = o.get(e, n)) !== null ? s : (s = e.getAttribute(n), s === null ? t : s)
- },
- removeAttr: function(e, t) {
- var n, r, i, s, o = 0;
- if (t && e.nodeType === 1) {
- r = t.split(y);
- for (; o < r.length; o++) i = r[o], i && (n = v.propFix[i] || i, s = X.test(i), s || v.attr(e, i, ""), e.removeAttribute(V ? i : n), s && n in e && (e[n] = !1))
- }
- },
- attrHooks: {
- type: {
- set: function(e, t) {
- if (U.test(e.nodeName) && e.parentNode) v.error("type property can't be changed");
- else if (!v.support.radioValue && t === "radio" && v.nodeName(e, "input")) {
- var n = e.value;
- return e.setAttribute("type", t), n && (e.value = n), t
- }
- }
- },
- value: {
- get: function(e, t) {
- return j && v.nodeName(e, "button") ? j.get(e, t) : t in e ? e.value : null
- },
- set: function(e, t, n) {
- if (j && v.nodeName(e, "button")) return j.set(e, t, n);
- e.value = t
- }
- }
- },
- propFix: {
- tabindex: "tabIndex",
- readonly: "readOnly",
- "for": "htmlFor",
- "class": "className",
- maxlength: "maxLength",
- cellspacing: "cellSpacing",
- cellpadding: "cellPadding",
- rowspan: "rowSpan",
- colspan: "colSpan",
- usemap: "useMap",
- frameborder: "frameBorder",
- contenteditable: "contentEditable"
- },
- prop: function(e, n, r) {
- var i, s, o, u = e.nodeType;
- if (!e || u === 3 || u === 8 || u === 2) return;
- return o = u !== 1 || !v.isXMLDoc(e), o && (n = v.propFix[n] || n, s = v.propHooks[n]), r !== t ? s && "set" in s && (i = s.set(e, r, n)) !== t ? i : e[n] = r : s && "get" in s && (i = s.get(e, n)) !== null ? i : e[n]
- },
- propHooks: {
- tabIndex: {
- get: function(e) {
- var n = e.getAttributeNode("tabindex");
- return n && n.specified ? parseInt(n.value, 10) : z.test(e.nodeName) || W.test(e.nodeName) && e.href ? 0 : t
- }
- }
- }
- }), F = {
- get: function(e, n) {
- var r, i = v.prop(e, n);
- return i === !0 || typeof i != "boolean" && (r = e.getAttributeNode(n)) && r.nodeValue !== !1 ? n.toLowerCase() : t
- },
- set: function(e, t, n) {
- var r;
- return t === !1 ? v.removeAttr(e, n) : (r = v.propFix[n] || n, r in e && (e[r] = !0), e.setAttribute(n, n.toLowerCase())), n
- }
- }, V || (I = {
- name: !0,
- id: !0,
- coords: !0
- }, j = v.valHooks.button = {
- get: function(e, n) {
- var r;
- return r = e.getAttributeNode(n), r && (I[n] ? r.value !== "" : r.specified) ? r.value : t
- },
- set: function(e, t, n) {
- var r = e.getAttributeNode(n);
- return r || (r = i.createAttribute(n), e.setAttributeNode(r)), r.value = t + ""
- }
- }, v.each(["width", "height"], function(e, t) {
- v.attrHooks[t] = v.extend(v.attrHooks[t], {
- set: function(e, n) {
- if (n === "") return e.setAttribute(t, "auto"), n
- }
- })
- }), v.attrHooks.contenteditable = {
- get: j.get,
- set: function(e, t, n) {
- t === "" && (t = "false"), j.set(e, t, n)
- }
- }), v.support.hrefNormalized || v.each(["href", "src", "width", "height"], function(e, n) {
- v.attrHooks[n] = v.extend(v.attrHooks[n], {
- get: function(e) {
- var r = e.getAttribute(n, 2);
- return r === null ? t : r
- }
- })
- }), v.support.style || (v.attrHooks.style = {
- get: function(e) {
- return e.style.cssText.toLowerCase() || t
- },
- set: function(e, t) {
- return e.style.cssText = t + ""
- }
- }), v.support.optSelected || (v.propHooks.selected = v.extend(v.propHooks.selected, {
- get: function(e) {
- var t = e.parentNode;
- return t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex), null
- }
- })), v.support.enctype || (v.propFix.enctype = "encoding"), v.support.checkOn || v.each(["radio", "checkbox"], function() {
- v.valHooks[this] = {
- get: function(e) {
- return e.getAttribute("value") === null ? "on" : e.value
- }
- }
- }), v.each(["radio", "checkbox"], function() {
- v.valHooks[this] = v.extend(v.valHooks[this], {
- set: function(e, t) {
- if (v.isArray(t)) return e.checked = v.inArray(v(e).val(), t) >= 0
- }
- })
- });
- var $ = /^(?:textarea|input|select)$/i,
- J = /^([^\.]*|)(?:\.(.+)|)$/,
- K = /(?:^|\s)hover(\.\S+|)\b/,
- Q = /^key/,
- G = /^(?:mouse|contextmenu)|click/,
- Y = /^(?:focusinfocus|focusoutblur)$/,
- Z = function(e) {
- return v.event.special.hover ? e : e.replace(K, "mouseenter$1 mouseleave$1")
- };
- v.event = {
- add: function(e, n, r, i, s) {
- var o, u, a, f, l, c, h, p, d, m, g;
- if (e.nodeType === 3 || e.nodeType === 8 || !n || !r || !(o = v._data(e))) return;
- r.handler && (d = r, r = d.handler, s = d.selector), r.guid || (r.guid = v.guid++), a = o.events, a || (o.events = a = {}), u = o.handle, u || (o.handle = u = function(e) {
- return typeof v == "undefined" || !!e && v.event.triggered === e.type ? t : v.event.dispatch.apply(u.elem, arguments)
- }, u.elem = e), n = v.trim(Z(n)).split(" ");
- for (f = 0; f < n.length; f++) {
- l = J.exec(n[f]) || [], c = l[1], h = (l[2] || "").split(".").sort(), g = v.event.special[c] || {}, c = (s ? g.delegateType : g.bindType) || c, g = v.event.special[c] || {}, p = v.extend({
- type: c,
- origType: l[1],
- data: i,
- handler: r,
- guid: r.guid,
- selector: s,
- needsContext: s && v.expr.match.needsContext.test(s),
- namespace: h.join(".")
- }, d), m = a[c];
- if (!m) {
- m = a[c] = [], m.delegateCount = 0;
- if (!g.setup || g.setup.call(e, i, h, u) === !1) e.addEventListener ? e.addEventListener(c, u, !1) : e.attachEvent && e.attachEvent("on" + c, u)
- }
- g.add && (g.add.call(e, p), p.handler.guid || (p.handler.guid = r.guid)), s ? m.splice(m.delegateCount++, 0, p) : m.push(p), v.event.global[c] = !0
- }
- e = null
- },
- global: {},
- remove: function(e, t, n, r, i) {
- var s, o, u, a, f, l, c, h, p, d, m, g = v.hasData(e) && v._data(e);
- if (!g || !(h = g.events)) return;
- t = v.trim(Z(t || "")).split(" ");
- for (s = 0; s < t.length; s++) {
- o = J.exec(t[s]) || [], u = a = o[1], f = o[2];
- if (!u) {
- for (u in h) v.event.remove(e, u + t[s], n, r, !0);
- continue
- }
- p = v.event.special[u] || {}, u = (r ? p.delegateType : p.bindType) || u, d = h[u] || [], l = d.length, f = f ? new RegExp("(^|\\.)" + f.split(".").sort().join("\\.(?:.*\\.|)") + "(\\.|$)") : null;
- for (c = 0; c < d.length; c++) m = d[c], (i || a === m.origType) && (!n || n.guid === m.guid) && (!f || f.test(m.namespace)) && (!r || r === m.selector || r === "**" && m.selector) && (d.splice(c--, 1), m.selector && d.delegateCount--, p.remove && p.remove.call(e, m));
- d.length === 0 && l !== d.length && ((!p.teardown || p.teardown.call(e, f, g.handle) === !1) && v.removeEvent(e, u, g.handle), delete h[u])
- }
- v.isEmptyObject(h) && (delete g.handle, v.removeData(e, "events", !0))
- },
- customEvent: {
- getData: !0,
- setData: !0,
- changeData: !0
- },
- trigger: function(n, r, s, o) {
- if (!s || s.nodeType !== 3 && s.nodeType !== 8) {
- var u, a, f, l, c, h, p, d, m, g, y = n.type || n,
- b = [];
- if (Y.test(y + v.event.triggered)) return;
- y.indexOf("!") >= 0 && (y = y.slice(0, -1), a = !0), y.indexOf(".") >= 0 && (b = y.split("."), y = b.shift(), b.sort());
- if ((!s || v.event.customEvent[y]) && !v.event.global[y]) return;
- n = typeof n == "object" ? n[v.expando] ? n : new v.Event(y, n) : new v.Event(y), n.type = y, n.isTrigger = !0, n.exclusive = a, n.namespace = b.join("."), n.namespace_re = n.namespace ? new RegExp("(^|\\.)" + b.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, h = y.indexOf(":") < 0 ? "on" + y : "";
- if (!s) {
- u = v.cache;
- for (f in u) u[f].events && u[f].events[y] && v.event.trigger(n, r, u[f].handle.elem, !0);
- return
- }
- n.result = t, n.target || (n.target = s), r = r != null ? v.makeArray(r) : [], r.unshift(n), p = v.event.special[y] || {};
- if (p.trigger && p.trigger.apply(s, r) === !1) return;
- m = [
- [s, p.bindType || y]
- ];
- if (!o && !p.noBubble && !v.isWindow(s)) {
- g = p.delegateType || y, l = Y.test(g + y) ? s : s.parentNode;
- for (c = s; l; l = l.parentNode) m.push([l, g]), c = l;
- c === (s.ownerDocument || i) && m.push([c.defaultView || c.parentWindow || e, g])
- }
- for (f = 0; f < m.length && !n.isPropagationStopped(); f++) l = m[f][0], n.type = m[f][1], d = (v._data(l, "events") || {})[n.type] && v._data(l, "handle"), d && d.apply(l, r), d = h && l[h], d && v.acceptData(l) && d.apply && d.apply(l, r) === !1 && n.preventDefault();
- return n.type = y, !o && !n.isDefaultPrevented() && (!p._default || p._default.apply(s.ownerDocument, r) === !1) && (y !== "click" || !v.nodeName(s, "a")) && v.acceptData(s) && h && s[y] && (y !== "focus" && y !== "blur" || n.target.offsetWidth !== 0) && !v.isWindow(s) && (c = s[h], c && (s[h] = null), v.event.triggered = y, s[y](), v.event.triggered = t, c && (s[h] = c)), n.result
- }
- return
- },
- dispatch: function(n) {
- n = v.event.fix(n || e.event);
- var r, i, s, o, u, a, f, c, h, p, d = (v._data(this, "events") || {})[n.type] || [],
- m = d.delegateCount,
- g = l.call(arguments),
- y = !n.exclusive && !n.namespace,
- b = v.event.special[n.type] || {},
- w = [];
- g[0] = n, n.delegateTarget = this;
- if (b.preDispatch && b.preDispatch.call(this, n) === !1) return;
- if (m && (!n.button || n.type !== "click"))
- for (s = n.target; s != this; s = s.parentNode || this)
- if (s.disabled !== !0 || n.type !== "click") {
- u = {}, f = [];
- for (r = 0; r < m; r++) c = d[r], h = c.selector, u[h] === t && (u[h] = c.needsContext ? v(h, this).index(s) >= 0 : v.find(h, this, null, [s]).length), u[h] && f.push(c);
- f.length && w.push({
- elem: s,
- matches: f
- })
- } d.length > m && w.push({
- elem: this,
- matches: d.slice(m)
- });
- for (r = 0; r < w.length && !n.isPropagationStopped(); r++) {
- a = w[r], n.currentTarget = a.elem;
- for (i = 0; i < a.matches.length && !n.isImmediatePropagationStopped(); i++) {
- c = a.matches[i];
- if (y || !n.namespace && !c.namespace || n.namespace_re && n.namespace_re.test(c.namespace)) n.data = c.data, n.handleObj = c, o = ((v.event.special[c.origType] || {}).handle || c.handler).apply(a.elem, g), o !== t && (n.result = o, o === !1 && (n.preventDefault(), n.stopPropagation()))
- }
- }
- return b.postDispatch && b.postDispatch.call(this, n), n.result
- },
- props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
- fixHooks: {},
- keyHooks: {
- props: "char charCode key keyCode".split(" "),
- filter: function(e, t) {
- return e.which == null && (e.which = t.charCode != null ? t.charCode : t.keyCode), e
- }
- },
- mouseHooks: {
- props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
- filter: function(e, n) {
- var r, s, o, u = n.button,
- a = n.fromElement;
- return e.pageX == null && n.clientX != null && (r = e.target.ownerDocument || i, s = r.documentElement, o = r.body, e.pageX = n.clientX + (s && s.scrollLeft || o && o.scrollLeft || 0) - (s && s.clientLeft || o && o.clientLeft || 0), e.pageY = n.clientY + (s && s.scrollTop || o && o.scrollTop || 0) - (s && s.clientTop || o && o.clientTop || 0)), !e.relatedTarget && a && (e.relatedTarget = a === e.target ? n.toElement : a), !e.which && u !== t && (e.which = u & 1 ? 1 : u & 2 ? 3 : u & 4 ? 2 : 0), e
- }
- },
- fix: function(e) {
- if (e[v.expando]) return e;
- var t, n, r = e,
- s = v.event.fixHooks[e.type] || {},
- o = s.props ? this.props.concat(s.props) : this.props;
- e = v.Event(r);
- for (t = o.length; t;) n = o[--t], e[n] = r[n];
- return e.target || (e.target = r.srcElement || i), e.target.nodeType === 3 && (e.target = e.target.parentNode), e.metaKey = !!e.metaKey, s.filter ? s.filter(e, r) : e
- },
- special: {
- load: {
- noBubble: !0
- },
- focus: {
- delegateType: "focusin"
- },
- blur: {
- delegateType: "focusout"
- },
- beforeunload: {
- setup: function(e, t, n) {
- v.isWindow(this) && (this.onbeforeunload = n)
- },
- teardown: function(e, t) {
- this.onbeforeunload === t && (this.onbeforeunload = null)
- }
- }
- },
- simulate: function(e, t, n, r) {
- var i = v.extend(new v.Event, n, {
- type: e,
- isSimulated: !0,
- originalEvent: {}
- });
- r ? v.event.trigger(i, null, t) : v.event.dispatch.call(t, i), i.isDefaultPrevented() && n.preventDefault()
- }
- }, v.event.handle = v.event.dispatch, v.removeEvent = i.removeEventListener ? function(e, t, n) {
- e.removeEventListener && e.removeEventListener(t, n, !1)
- } : function(e, t, n) {
- var r = "on" + t;
- e.detachEvent && (typeof e[r] == "undefined" && (e[r] = null), e.detachEvent(r, n))
- }, v.Event = function(e, t) {
- if (!(this instanceof v.Event)) return new v.Event(e, t);
- e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || e.returnValue === !1 || e.getPreventDefault && e.getPreventDefault() ? tt : et) : this.type = e, t && v.extend(this, t), this.timeStamp = e && e.timeStamp || v.now(), this[v.expando] = !0
- }, v.Event.prototype = {
- preventDefault: function() {
- this.isDefaultPrevented = tt;
- var e = this.originalEvent;
- if (!e) return;
- e.preventDefault ? e.preventDefault() : e.returnValue = !1
- },
- stopPropagation: function() {
- this.isPropagationStopped = tt;
- var e = this.originalEvent;
- if (!e) return;
- e.stopPropagation && e.stopPropagation(), e.cancelBubble = !0
- },
- stopImmediatePropagation: function() {
- this.isImmediatePropagationStopped = tt, this.stopPropagation()
- },
- isDefaultPrevented: et,
- isPropagationStopped: et,
- isImmediatePropagationStopped: et
- }, v.each({
- mouseenter: "mouseover",
- mouseleave: "mouseout"
- }, function(e, t) {
- v.event.special[e] = {
- delegateType: t,
- bindType: t,
- handle: function(e) {
- var n, r = this,
- i = e.relatedTarget,
- s = e.handleObj,
- o = s.selector;
- if (!i || i !== r && !v.contains(r, i)) e.type = s.origType, n = s.handler.apply(this, arguments), e.type = t;
- return n
- }
- }
- }), v.support.submitBubbles || (v.event.special.submit = {
- setup: function() {
- if (v.nodeName(this, "form")) return !1;
- v.event.add(this, "click._submit keypress._submit", function(e) {
- var n = e.target,
- r = v.nodeName(n, "input") || v.nodeName(n, "button") ? n.form : t;
- r && !v._data(r, "_submit_attached") && (v.event.add(r, "submit._submit", function(e) {
- e._submit_bubble = !0
- }), v._data(r, "_submit_attached", !0))
- })
- },
- postDispatch: function(e) {
- e._submit_bubble && (delete e._submit_bubble, this.parentNode && !e.isTrigger && v.event.simulate("submit", this.parentNode, e, !0))
- },
- teardown: function() {
- if (v.nodeName(this, "form")) return !1;
- v.event.remove(this, "._submit")
- }
- }), v.support.changeBubbles || (v.event.special.change = {
- setup: function() {
- if ($.test(this.nodeName)) {
- if (this.type === "checkbox" || this.type === "radio") v.event.add(this, "propertychange._change", function(e) {
- e.originalEvent.propertyName === "checked" && (this._just_changed = !0)
- }), v.event.add(this, "click._change", function(e) {
- this._just_changed && !e.isTrigger && (this._just_changed = !1), v.event.simulate("change", this, e, !0)
- });
- return !1
- }
- v.event.add(this, "beforeactivate._change", function(e) {
- var t = e.target;
- $.test(t.nodeName) && !v._data(t, "_change_attached") && (v.event.add(t, "change._change", function(e) {
- this.parentNode && !e.isSimulated && !e.isTrigger && v.event.simulate("change", this.parentNode, e, !0)
- }), v._data(t, "_change_attached", !0))
- })
- },
- handle: function(e) {
- var t = e.target;
- if (this !== t || e.isSimulated || e.isTrigger || t.type !== "radio" && t.type !== "checkbox") return e.handleObj.handler.apply(this, arguments)
- },
- teardown: function() {
- return v.event.remove(this, "._change"), !$.test(this.nodeName)
- }
- }), v.support.focusinBubbles || v.each({
- focus: "focusin",
- blur: "focusout"
- }, function(e, t) {
- var n = 0,
- r = function(e) {
- v.event.simulate(t, e.target, v.event.fix(e), !0)
- };
- v.event.special[t] = {
- setup: function() {
- n++ === 0 && i.addEventListener(e, r, !0)
- },
- teardown: function() {
- --n === 0 && i.removeEventListener(e, r, !0)
- }
- }
- }), v.fn.extend({
- on: function(e, n, r, i, s) {
- var o, u;
- if (typeof e == "object") {
- typeof n != "string" && (r = r || n, n = t);
- for (u in e) this.on(u, n, r, e[u], s);
- return this
- }
- r == null && i == null ? (i = n, r = n = t) : i == null && (typeof n == "string" ? (i = r, r = t) : (i = r, r = n, n = t));
- if (i === !1) i = et;
- else if (!i) return this;
- return s === 1 && (o = i, i = function(e) {
- return v().off(e), o.apply(this, arguments)
- }, i.guid = o.guid || (o.guid = v.guid++)), this.each(function() {
- v.event.add(this, e, i, r, n)
- })
- },
- one: function(e, t, n, r) {
- return this.on(e, t, n, r, 1)
- },
- off: function(e, n, r) {
- var i, s;
- if (e && e.preventDefault && e.handleObj) return i = e.handleObj, v(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace : i.origType, i.selector, i.handler), this;
- if (typeof e == "object") {
- for (s in e) this.off(s, n, e[s]);
- return this
- }
- if (n === !1 || typeof n == "function") r = n, n = t;
- return r === !1 && (r = et), this.each(function() {
- v.event.remove(this, e, r, n)
- })
- },
- bind: function(e, t, n) {
- return this.on(e, null, t, n)
- },
- unbind: function(e, t) {
- return this.off(e, null, t)
- },
- live: function(e, t, n) {
- return v(this.context).on(e, this.selector, t, n), this
- },
- die: function(e, t) {
- return v(this.context).off(e, this.selector || "**", t), this
- },
- delegate: function(e, t, n, r) {
- return this.on(t, e, n, r)
- },
- undelegate: function(e, t, n) {
- return arguments.length === 1 ? this.off(e, "**") : this.off(t, e || "**", n)
- },
- trigger: function(e, t) {
- return this.each(function() {
- v.event.trigger(e, t, this)
- })
- },
- triggerHandler: function(e, t) {
- if (this[0]) return v.event.trigger(e, t, this[0], !0)
- },
- toggle: function(e) {
- var t = arguments,
- n = e.guid || v.guid++,
- r = 0,
- i = function(n) {
- var i = (v._data(this, "lastToggle" + e.guid) || 0) % r;
- return v._data(this, "lastToggle" + e.guid, i + 1), n.preventDefault(), t[i].apply(this, arguments) || !1
- };
- i.guid = n;
- while (r < t.length) t[r++].guid = n;
- return this.click(i)
- },
- hover: function(e, t) {
- return this.mouseenter(e).mouseleave(t || e)
- }
- }), v.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "), function(e, t) {
- v.fn[t] = function(e, n) {
- return n == null && (n = e, e = null), arguments.length > 0 ? this.on(t, null, e, n) : this.trigger(t)
- }, Q.test(t) && (v.event.fixHooks[t] = v.event.keyHooks), G.test(t) && (v.event.fixHooks[t] = v.event.mouseHooks)
- }),
- function(e, t) {
- function nt(e, t, n, r) {
- n = n || [], t = t || g;
- var i, s, a, f, l = t.nodeType;
- if (!e || typeof e != "string") return n;
- if (l !== 1 && l !== 9) return [];
- a = o(t);
- if (!a && !r)
- if (i = R.exec(e))
- if (f = i[1]) {
- if (l === 9) {
- s = t.getElementById(f);
- if (!s || !s.parentNode) return n;
- if (s.id === f) return n.push(s), n
- } else if (t.ownerDocument && (s = t.ownerDocument.getElementById(f)) && u(t, s) && s.id === f) return n.push(s), n
- } else {
- if (i[2]) return S.apply(n, x.call(t.getElementsByTagName(e), 0)), n;
- if ((f = i[3]) && Z && t.getElementsByClassName) return S.apply(n, x.call(t.getElementsByClassName(f), 0)), n
- } return vt(e.replace(j, "$1"), t, n, r, a)
- }
-
- function rt(e) {
- return function(t) {
- var n = t.nodeName.toLowerCase();
- return n === "input" && t.type === e
- }
- }
-
- function it(e) {
- return function(t) {
- var n = t.nodeName.toLowerCase();
- return (n === "input" || n === "button") && t.type === e
- }
- }
-
- function st(e) {
- return N(function(t) {
- return t = +t, N(function(n, r) {
- var i, s = e([], n.length, t),
- o = s.length;
- while (o--) n[i = s[o]] && (n[i] = !(r[i] = n[i]))
- })
- })
- }
-
- function ot(e, t, n) {
- if (e === t) return n;
- var r = e.nextSibling;
- while (r) {
- if (r === t) return -1;
- r = r.nextSibling
- }
- return 1
- }
-
- function ut(e, t) {
- var n, r, s, o, u, a, f, l = L[d][e + " "];
- if (l) return t ? 0 : l.slice(0);
- u = e, a = [], f = i.preFilter;
- while (u) {
- if (!n || (r = F.exec(u))) r && (u = u.slice(r[0].length) || u), a.push(s = []);
- n = !1;
- if (r = I.exec(u)) s.push(n = new m(r.shift())), u = u.slice(n.length), n.type = r[0].replace(j, " ");
- for (o in i.filter)(r = J[o].exec(u)) && (!f[o] || (r = f[o](r))) && (s.push(n = new m(r.shift())), u = u.slice(n.length), n.type = o, n.matches = r);
- if (!n) break
- }
- return t ? u.length : u ? nt.error(e) : L(e, a).slice(0)
- }
-
- function at(e, t, r) {
- var i = t.dir,
- s = r && t.dir === "parentNode",
- o = w++;
- return t.first ? function(t, n, r) {
- while (t = t[i])
- if (s || t.nodeType === 1) return e(t, n, r)
- } : function(t, r, u) {
- if (!u) {
- var a, f = b + " " + o + " ",
- l = f + n;
- while (t = t[i])
- if (s || t.nodeType === 1) {
- if ((a = t[d]) === l) return t.sizset;
- if (typeof a == "string" && a.indexOf(f) === 0) {
- if (t.sizset) return t
- } else {
- t[d] = l;
- if (e(t, r, u)) return t.sizset = !0, t;
- t.sizset = !1
- }
- }
- } else
- while (t = t[i])
- if (s || t.nodeType === 1)
- if (e(t, r, u)) return t
- }
- }
-
- function ft(e) {
- return e.length > 1 ? function(t, n, r) {
- var i = e.length;
- while (i--)
- if (!e[i](t, n, r)) return !1;
- return !0
- } : e[0]
- }
-
- function lt(e, t, n, r, i) {
- var s, o = [],
- u = 0,
- a = e.length,
- f = t != null;
- for (; u < a; u++)
- if (s = e[u])
- if (!n || n(s, r, i)) o.push(s), f && t.push(u);
- return o
- }
-
- function ct(e, t, n, r, i, s) {
- return r && !r[d] && (r = ct(r)), i && !i[d] && (i = ct(i, s)), N(function(s, o, u, a) {
- var f, l, c, h = [],
- p = [],
- d = o.length,
- v = s || dt(t || "*", u.nodeType ? [u] : u, []),
- m = e && (s || !t) ? lt(v, h, e, u, a) : v,
- g = n ? i || (s ? e : d || r) ? [] : o : m;
- n && n(m, g, u, a);
- if (r) {
- f = lt(g, p), r(f, [], u, a), l = f.length;
- while (l--)
- if (c = f[l]) g[p[l]] = !(m[p[l]] = c)
- }
- if (s) {
- if (i || e) {
- if (i) {
- f = [], l = g.length;
- while (l--)(c = g[l]) && f.push(m[l] = c);
- i(null, g = [], f, a)
- }
- l = g.length;
- while (l--)(c = g[l]) && (f = i ? T.call(s, c) : h[l]) > -1 && (s[f] = !(o[f] = c))
- }
- } else g = lt(g === o ? g.splice(d, g.length) : g), i ? i(null, o, g, a) : S.apply(o, g)
- })
- }
-
- function ht(e) {
- var t, n, r, s = e.length,
- o = i.relative[e[0].type],
- u = o || i.relative[" "],
- a = o ? 1 : 0,
- f = at(function(e) {
- return e === t
- }, u, !0),
- l = at(function(e) {
- return T.call(t, e) > -1
- }, u, !0),
- h = [function(e, n, r) {
- return !o && (r || n !== c) || ((t = n).nodeType ? f(e, n, r) : l(e, n, r))
- }];
- for (; a < s; a++)
- if (n = i.relative[e[a].type]) h = [at(ft(h), n)];
- else {
- n = i.filter[e[a].type].apply(null, e[a].matches);
- if (n[d]) {
- r = ++a;
- for (; r < s; r++)
- if (i.relative[e[r].type]) break;
- return ct(a > 1 && ft(h), a > 1 && e.slice(0, a - 1).join("").replace(j, "$1"), n, a < r && ht(e.slice(a, r)), r < s && ht(e = e.slice(r)), r < s && e.join(""))
- }
- h.push(n)
- } return ft(h)
- }
-
- function pt(e, t) {
- var r = t.length > 0,
- s = e.length > 0,
- o = function(u, a, f, l, h) {
- var p, d, v, m = [],
- y = 0,
- w = "0",
- x = u && [],
- T = h != null,
- N = c,
- C = u || s && i.find.TAG("*", h && a.parentNode || a),
- k = b += N == null ? 1 : Math.E;
- T && (c = a !== g && a, n = o.el);
- for (;
- (p = C[w]) != null; w++) {
- if (s && p) {
- for (d = 0; v = e[d]; d++)
- if (v(p, a, f)) {
- l.push(p);
- break
- } T && (b = k, n = ++o.el)
- }
- r && ((p = !v && p) && y--, u && x.push(p))
- }
- y += w;
- if (r && w !== y) {
- for (d = 0; v = t[d]; d++) v(x, m, a, f);
- if (u) {
- if (y > 0)
- while (w--) !x[w] && !m[w] && (m[w] = E.call(l));
- m = lt(m)
- }
- S.apply(l, m), T && !u && m.length > 0 && y + t.length > 1 && nt.uniqueSort(l)
- }
- return T && (b = k, c = N), x
- };
- return o.el = 0, r ? N(o) : o
- }
-
- function dt(e, t, n) {
- var r = 0,
- i = t.length;
- for (; r < i; r++) nt(e, t[r], n);
- return n
- }
-
- function vt(e, t, n, r, s) {
- var o, u, f, l, c, h = ut(e),
- p = h.length;
- if (!r && h.length === 1) {
- u = h[0] = h[0].slice(0);
- if (u.length > 2 && (f = u[0]).type === "ID" && t.nodeType === 9 && !s && i.relative[u[1].type]) {
- t = i.find.ID(f.matches[0].replace($, ""), t, s)[0];
- if (!t) return n;
- e = e.slice(u.shift().length)
- }
- for (o = J.POS.test(e) ? -1 : u.length - 1; o >= 0; o--) {
- f = u[o];
- if (i.relative[l = f.type]) break;
- if (c = i.find[l])
- if (r = c(f.matches[0].replace($, ""), z.test(u[0].type) && t.parentNode || t, s)) {
- u.splice(o, 1), e = r.length && u.join("");
- if (!e) return S.apply(n, x.call(r, 0)), n;
- break
- }
- }
- }
- return a(e, h)(r, t, s, n, z.test(e)), n
- }
-
- function mt() {}
- var n, r, i, s, o, u, a, f, l, c, h = !0,
- p = "undefined",
- d = ("sizcache" + Math.random()).replace(".", ""),
- m = String,
- g = e.document,
- y = g.documentElement,
- b = 0,
- w = 0,
- E = [].pop,
- S = [].push,
- x = [].slice,
- T = [].indexOf || function(e) {
- var t = 0,
- n = this.length;
- for (; t < n; t++)
- if (this[t] === e) return t;
- return -1
- },
- N = function(e, t) {
- return e[d] = t == null || t, e
- },
- C = function() {
- var e = {},
- t = [];
- return N(function(n, r) {
- return t.push(n) > i.cacheLength && delete e[t.shift()], e[n + " "] = r
- }, e)
- },
- k = C(),
- L = C(),
- A = C(),
- O = "[\\x20\\t\\r\\n\\f]",
- M = "(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",
- _ = M.replace("w", "w#"),
- D = "([*^$|!~]?=)",
- P = "\\[" + O + "*(" + M + ")" + O + "*(?:" + D + O + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + _ + ")|)|)" + O + "*\\]",
- H = ":(" + M + ")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:" + P + ")|[^:]|\\\\.)*|.*))\\)|)",
- B = ":(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + O + "*((?:-\\d)?\\d*)" + O + "*\\)|)(?=[^-]|$)",
- j = new RegExp("^" + O + "+|((?:^|[^\\\\])(?:\\\\.)*)" + O + "+$", "g"),
- F = new RegExp("^" + O + "*," + O + "*"),
- I = new RegExp("^" + O + "*([\\x20\\t\\r\\n\\f>+~])" + O + "*"),
- q = new RegExp(H),
- R = /^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,
- U = /^:not/,
- z = /[\x20\t\r\n\f]*[+~]/,
- W = /:not\($/,
- X = /h\d/i,
- V = /input|select|textarea|button/i,
- $ = /\\(?!\\)/g,
- J = {
- ID: new RegExp("^#(" + M + ")"),
- CLASS: new RegExp("^\\.(" + M + ")"),
- NAME: new RegExp("^\\[name=['\"]?(" + M + ")['\"]?\\]"),
- TAG: new RegExp("^(" + M.replace("w", "w*") + ")"),
- ATTR: new RegExp("^" + P),
- PSEUDO: new RegExp("^" + H),
- POS: new RegExp(B, "i"),
- CHILD: new RegExp("^:(only|nth|first|last)-child(?:\\(" + O + "*(even|odd|(([+-]|)(\\d*)n|)" + O + "*(?:([+-]|)" + O + "*(\\d+)|))" + O + "*\\)|)", "i"),
- needsContext: new RegExp("^" + O + "*[>+~]|" + B, "i")
- },
- K = function(e) {
- var t = g.createElement("div");
- try {
- return e(t)
- } catch (n) {
- return !1
- } finally {
- t = null
- }
- },
- Q = K(function(e) {
- return e.appendChild(g.createComment("")), !e.getElementsByTagName("*").length
- }),
- G = K(function(e) {
- return e.innerHTML = "
", e.firstChild && typeof e.firstChild.getAttribute !== p && e.firstChild.getAttribute("href") === "#"
- }),
- Y = K(function(e) {
- e.innerHTML = "
";
- var t = typeof e.lastChild.getAttribute("multiple");
- return t !== "boolean" && t !== "string"
- }),
- Z = K(function(e) {
- return e.innerHTML = "
", !e.getElementsByClassName || !e.getElementsByClassName("e").length ? !1 : (e.lastChild.className = "e", e.getElementsByClassName("e").length === 2)
- }),
- et = K(function(e) {
- e.id = d + 0, e.innerHTML = "
", y.insertBefore(e, y.firstChild);
- var t = g.getElementsByName && g.getElementsByName(d).length === 2 + g.getElementsByName(d + 0).length;
- return r = !g.getElementById(d), y.removeChild(e), t
- });
- try {
- x.call(y.childNodes, 0)[0].nodeType
- } catch (tt) {
- x = function(e) {
- var t, n = [];
- for (; t = this[e]; e++) n.push(t);
- return n
- }
- }
- nt.matches = function(e, t) {
- return nt(e, null, null, t)
- }, nt.matchesSelector = function(e, t) {
- return nt(t, null, null, [e]).length > 0
- }, s = nt.getText = function(e) {
- var t, n = "",
- r = 0,
- i = e.nodeType;
- if (i) {
- if (i === 1 || i === 9 || i === 11) {
- if (typeof e.textContent == "string") return e.textContent;
- for (e = e.firstChild; e; e = e.nextSibling) n += s(e)
- } else if (i === 3 || i === 4) return e.nodeValue
- } else
- for (; t = e[r]; r++) n += s(t);
- return n
- }, o = nt.isXML = function(e) {
- var t = e && (e.ownerDocument || e).documentElement;
- return t ? t.nodeName !== "HTML" : !1
- }, u = nt.contains = y.contains ? function(e, t) {
- var n = e.nodeType === 9 ? e.documentElement : e,
- r = t && t.parentNode;
- return e === r || !!(r && r.nodeType === 1 && n.contains && n.contains(r))
- } : y.compareDocumentPosition ? function(e, t) {
- return t && !!(e.compareDocumentPosition(t) & 16)
- } : function(e, t) {
- while (t = t.parentNode)
- if (t === e) return !0;
- return !1
- }, nt.attr = function(e, t) {
- var n, r = o(e);
- return r || (t = t.toLowerCase()), (n = i.attrHandle[t]) ? n(e) : r || Y ? e.getAttribute(t) : (n = e.getAttributeNode(t), n ? typeof e[t] == "boolean" ? e[t] ? t : null : n.specified ? n.value : null : null)
- }, i = nt.selectors = {
- cacheLength: 50,
- createPseudo: N,
- match: J,
- attrHandle: G ? {} : {
- href: function(e) {
- return e.getAttribute("href", 2)
- },
- type: function(e) {
- return e.getAttribute("type")
- }
- },
- find: {
- ID: r ? function(e, t, n) {
- if (typeof t.getElementById !== p && !n) {
- var r = t.getElementById(e);
- return r && r.parentNode ? [r] : []
- }
- } : function(e, n, r) {
- if (typeof n.getElementById !== p && !r) {
- var i = n.getElementById(e);
- return i ? i.id === e || typeof i.getAttributeNode !== p && i.getAttributeNode("id").value === e ? [i] : t : []
- }
- },
- TAG: Q ? function(e, t) {
- if (typeof t.getElementsByTagName !== p) return t.getElementsByTagName(e)
- } : function(e, t) {
- var n = t.getElementsByTagName(e);
- if (e === "*") {
- var r, i = [],
- s = 0;
- for (; r = n[s]; s++) r.nodeType === 1 && i.push(r);
- return i
- }
- return n
- },
- NAME: et && function(e, t) {
- if (typeof t.getElementsByName !== p) return t.getElementsByName(name)
- },
- CLASS: Z && function(e, t, n) {
- if (typeof t.getElementsByClassName !== p && !n) return t.getElementsByClassName(e)
- }
- },
- relative: {
- ">": {
- dir: "parentNode",
- first: !0
- },
- " ": {
- dir: "parentNode"
- },
- "+": {
- dir: "previousSibling",
- first: !0
- },
- "~": {
- dir: "previousSibling"
- }
- },
- preFilter: {
- ATTR: function(e) {
- return e[1] = e[1].replace($, ""), e[3] = (e[4] || e[5] || "").replace($, ""), e[2] === "~=" && (e[3] = " " + e[3] + " "), e.slice(0, 4)
- },
- CHILD: function(e) {
- return e[1] = e[1].toLowerCase(), e[1] === "nth" ? (e[2] || nt.error(e[0]), e[3] = +(e[3] ? e[4] + (e[5] || 1) : 2 * (e[2] === "even" || e[2] === "odd")), e[4] = +(e[6] + e[7] || e[2] === "odd")) : e[2] && nt.error(e[0]), e
- },
- PSEUDO: function(e) {
- var t, n;
- if (J.CHILD.test(e[0])) return null;
- if (e[3]) e[2] = e[3];
- else if (t = e[4]) q.test(t) && (n = ut(t, !0)) && (n = t.indexOf(")", t.length - n) - t.length) && (t = t.slice(0, n), e[0] = e[0].slice(0, n)), e[2] = t;
- return e.slice(0, 3)
- }
- },
- filter: {
- ID: r ? function(e) {
- return e = e.replace($, ""),
- function(t) {
- return t.getAttribute("id") === e
- }
- } : function(e) {
- return e = e.replace($, ""),
- function(t) {
- var n = typeof t.getAttributeNode !== p && t.getAttributeNode("id");
- return n && n.value === e
- }
- },
- TAG: function(e) {
- return e === "*" ? function() {
- return !0
- } : (e = e.replace($, "").toLowerCase(), function(t) {
- return t.nodeName && t.nodeName.toLowerCase() === e
- })
- },
- CLASS: function(e) {
- var t = k[d][e + " "];
- return t || (t = new RegExp("(^|" + O + ")" + e + "(" + O + "|$)")) && k(e, function(e) {
- return t.test(e.className || typeof e.getAttribute !== p && e.getAttribute("class") || "")
- })
- },
- ATTR: function(e, t, n) {
- return function(r, i) {
- var s = nt.attr(r, e);
- return s == null ? t === "!=" : t ? (s += "", t === "=" ? s === n : t === "!=" ? s !== n : t === "^=" ? n && s.indexOf(n) === 0 : t === "*=" ? n && s.indexOf(n) > -1 : t === "$=" ? n && s.substr(s.length - n.length) === n : t === "~=" ? (" " + s + " ").indexOf(n) > -1 : t === "|=" ? s === n || s.substr(0, n.length + 1) === n + "-" : !1) : !0
- }
- },
- CHILD: function(e, t, n, r) {
- return e === "nth" ? function(e) {
- var t, i, s = e.parentNode;
- if (n === 1 && r === 0) return !0;
- if (s) {
- i = 0;
- for (t = s.firstChild; t; t = t.nextSibling)
- if (t.nodeType === 1) {
- i++;
- if (e === t) break
- }
- }
- return i -= r, i === n || i % n === 0 && i / n >= 0
- } : function(t) {
- var n = t;
- switch (e) {
- case "only":
- case "first":
- while (n = n.previousSibling)
- if (n.nodeType === 1) return !1;
- if (e === "first") return !0;
- n = t;
- case "last":
- while (n = n.nextSibling)
- if (n.nodeType === 1) return !1;
- return !0
- }
- }
- },
- PSEUDO: function(e, t) {
- var n, r = i.pseudos[e] || i.setFilters[e.toLowerCase()] || nt.error("unsupported pseudo: " + e);
- return r[d] ? r(t) : r.length > 1 ? (n = [e, e, "", t], i.setFilters.hasOwnProperty(e.toLowerCase()) ? N(function(e, n) {
- var i, s = r(e, t),
- o = s.length;
- while (o--) i = T.call(e, s[o]), e[i] = !(n[i] = s[o])
- }) : function(e) {
- return r(e, 0, n)
- }) : r
- }
- },
- pseudos: {
- not: N(function(e) {
- var t = [],
- n = [],
- r = a(e.replace(j, "$1"));
- return r[d] ? N(function(e, t, n, i) {
- var s, o = r(e, null, i, []),
- u = e.length;
- while (u--)
- if (s = o[u]) e[u] = !(t[u] = s)
- }) : function(e, i, s) {
- return t[0] = e, r(t, null, s, n), !n.pop()
- }
- }),
- has: N(function(e) {
- return function(t) {
- return nt(e, t).length > 0
- }
- }),
- contains: N(function(e) {
- return function(t) {
- return (t.textContent || t.innerText || s(t)).indexOf(e) > -1
- }
- }),
- enabled: function(e) {
- return e.disabled === !1
- },
- disabled: function(e) {
- return e.disabled === !0
- },
- checked: function(e) {
- var t = e.nodeName.toLowerCase();
- return t === "input" && !!e.checked || t === "option" && !!e.selected
- },
- selected: function(e) {
- return e.parentNode && e.parentNode.selectedIndex, e.selected === !0
- },
- parent: function(e) {
- return !i.pseudos.empty(e)
- },
- empty: function(e) {
- var t;
- e = e.firstChild;
- while (e) {
- if (e.nodeName > "@" || (t = e.nodeType) === 3 || t === 4) return !1;
- e = e.nextSibling
- }
- return !0
- },
- header: function(e) {
- return X.test(e.nodeName)
- },
- text: function(e) {
- var t, n;
- return e.nodeName.toLowerCase() === "input" && (t = e.type) === "text" && ((n = e.getAttribute("type")) == null || n.toLowerCase() === t)
- },
- radio: rt("radio"),
- checkbox: rt("checkbox"),
- file: rt("file"),
- password: rt("password"),
- image: rt("image"),
- submit: it("submit"),
- reset: it("reset"),
- button: function(e) {
- var t = e.nodeName.toLowerCase();
- return t === "input" && e.type === "button" || t === "button"
- },
- input: function(e) {
- return V.test(e.nodeName)
- },
- focus: function(e) {
- var t = e.ownerDocument;
- return e === t.activeElement && (!t.hasFocus || t.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
- },
- active: function(e) {
- return e === e.ownerDocument.activeElement
- },
- first: st(function() {
- return [0]
- }),
- last: st(function(e, t) {
- return [t - 1]
- }),
- eq: st(function(e, t, n) {
- return [n < 0 ? n + t : n]
- }),
- even: st(function(e, t) {
- for (var n = 0; n < t; n += 2) e.push(n);
- return e
- }),
- odd: st(function(e, t) {
- for (var n = 1; n < t; n += 2) e.push(n);
- return e
- }),
- lt: st(function(e, t, n) {
- for (var r = n < 0 ? n + t : n; --r >= 0;) e.push(r);
- return e
- }),
- gt: st(function(e, t, n) {
- for (var r = n < 0 ? n + t : n; ++r < t;) e.push(r);
- return e
- })
- }
- }, f = y.compareDocumentPosition ? function(e, t) {
- return e === t ? (l = !0, 0) : (!e.compareDocumentPosition || !t.compareDocumentPosition ? e.compareDocumentPosition : e.compareDocumentPosition(t) & 4) ? -1 : 1
- } : function(e, t) {
- if (e === t) return l = !0, 0;
- if (e.sourceIndex && t.sourceIndex) return e.sourceIndex - t.sourceIndex;
- var n, r, i = [],
- s = [],
- o = e.parentNode,
- u = t.parentNode,
- a = o;
- if (o === u) return ot(e, t);
- if (!o) return -1;
- if (!u) return 1;
- while (a) i.unshift(a), a = a.parentNode;
- a = u;
- while (a) s.unshift(a), a = a.parentNode;
- n = i.length, r = s.length;
- for (var f = 0; f < n && f < r; f++)
- if (i[f] !== s[f]) return ot(i[f], s[f]);
- return f === n ? ot(e, s[f], -1) : ot(i[f], t, 1)
- }, [0, 0].sort(f), h = !l, nt.uniqueSort = function(e) {
- var t, n = [],
- r = 1,
- i = 0;
- l = h, e.sort(f);
- if (l) {
- for (; t = e[r]; r++) t === e[r - 1] && (i = n.push(r));
- while (i--) e.splice(n[i], 1)
- }
- return e
- }, nt.error = function(e) {
- throw new Error("Syntax error, unrecognized expression: " + e)
- }, a = nt.compile = function(e, t) {
- var n, r = [],
- i = [],
- s = A[d][e + " "];
- if (!s) {
- t || (t = ut(e)), n = t.length;
- while (n--) s = ht(t[n]), s[d] ? r.push(s) : i.push(s);
- s = A(e, pt(i, r))
- }
- return s
- }, g.querySelectorAll && function() {
- var e, t = vt,
- n = /'|\\/g,
- r = /\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,
- i = [":focus"],
- s = [":active"],
- u = y.matchesSelector || y.mozMatchesSelector || y.webkitMatchesSelector || y.oMatchesSelector || y.msMatchesSelector;
- K(function(e) {
- e.innerHTML = "
", e.querySelectorAll("[selected]").length || i.push("\\[" + O + "*(?:checked|disabled|ismap|multiple|readonly|selected|value)"), e.querySelectorAll(":checked").length || i.push(":checked")
- }), K(function(e) {
- e.innerHTML = "
", e.querySelectorAll("[test^='']").length && i.push("[*^$]=" + O + "*(?:\"\"|'')"), e.innerHTML = "
", e.querySelectorAll(":enabled").length || i.push(":enabled", ":disabled")
- }), i = new RegExp(i.join("|")), vt = function(e, r, s, o, u) {
- if (!o && !u && !i.test(e)) {
- var a, f, l = !0,
- c = d,
- h = r,
- p = r.nodeType === 9 && e;
- if (r.nodeType === 1 && r.nodeName.toLowerCase() !== "object") {
- a = ut(e), (l = r.getAttribute("id")) ? c = l.replace(n, "\\$&") : r.setAttribute("id", c), c = "[id='" + c + "'] ", f = a.length;
- while (f--) a[f] = c + a[f].join("");
- h = z.test(e) && r.parentNode || r, p = a.join(",")
- }
- if (p) try {
- return S.apply(s, x.call(h.querySelectorAll(p), 0)), s
- } catch (v) {} finally {
- l || r.removeAttribute("id")
- }
- }
- return t(e, r, s, o, u)
- }, u && (K(function(t) {
- e = u.call(t, "div");
- try {
- u.call(t, "[test!='']:sizzle"), s.push("!=", H)
- } catch (n) {}
- }), s = new RegExp(s.join("|")), nt.matchesSelector = function(t, n) {
- n = n.replace(r, "='$1']");
- if (!o(t) && !s.test(n) && !i.test(n)) try {
- var a = u.call(t, n);
- if (a || e || t.document && t.document.nodeType !== 11) return a
- } catch (f) {}
- return nt(n, null, null, [t]).length > 0
- })
- }(), i.pseudos.nth = i.pseudos.eq, i.filters = mt.prototype = i.pseudos, i.setFilters = new mt, nt.attr = v.attr, v.find = nt, v.expr = nt.selectors, v.expr[":"] = v.expr.pseudos, v.unique = nt.uniqueSort, v.text = nt.getText, v.isXMLDoc = nt.isXML, v.contains = nt.contains
- }(e);
- var nt = /Until$/,
- rt = /^(?:parents|prev(?:Until|All))/,
- it = /^.[^:#\[\.,]*$/,
- st = v.expr.match.needsContext,
- ot = {
- children: !0,
- contents: !0,
- next: !0,
- prev: !0
- };
- v.fn.extend({
- find: function(e) {
- var t, n, r, i, s, o, u = this;
- if (typeof e != "string") return v(e).filter(function() {
- for (t = 0, n = u.length; t < n; t++)
- if (v.contains(u[t], this)) return !0
- });
- o = this.pushStack("", "find", e);
- for (t = 0, n = this.length; t < n; t++) {
- r = o.length, v.find(e, this[t], o);
- if (t > 0)
- for (i = r; i < o.length; i++)
- for (s = 0; s < r; s++)
- if (o[s] === o[i]) {
- o.splice(i--, 1);
- break
- }
- }
- return o
- },
- has: function(e) {
- var t, n = v(e, this),
- r = n.length;
- return this.filter(function() {
- for (t = 0; t < r; t++)
- if (v.contains(this, n[t])) return !0
- })
- },
- not: function(e) {
- return this.pushStack(ft(this, e, !1), "not", e)
- },
- filter: function(e) {
- return this.pushStack(ft(this, e, !0), "filter", e)
- },
- is: function(e) {
- return !!e && (typeof e == "string" ? st.test(e) ? v(e, this.context).index(this[0]) >= 0 : v.filter(e, this).length > 0 : this.filter(e).length > 0)
- },
- closest: function(e, t) {
- var n, r = 0,
- i = this.length,
- s = [],
- o = st.test(e) || typeof e != "string" ? v(e, t || this.context) : 0;
- for (; r < i; r++) {
- n = this[r];
- while (n && n.ownerDocument && n !== t && n.nodeType !== 11) {
- if (o ? o.index(n) > -1 : v.find.matchesSelector(n, e)) {
- s.push(n);
- break
- }
- n = n.parentNode
- }
- }
- return s = s.length > 1 ? v.unique(s) : s, this.pushStack(s, "closest", e)
- },
- index: function(e) {
- return e ? typeof e == "string" ? v.inArray(this[0], v(e)) : v.inArray(e.jquery ? e[0] : e, this) : this[0] && this[0].parentNode ? this.prevAll().length : -1
- },
- add: function(e, t) {
- var n = typeof e == "string" ? v(e, t) : v.makeArray(e && e.nodeType ? [e] : e),
- r = v.merge(this.get(), n);
- return this.pushStack(ut(n[0]) || ut(r[0]) ? r : v.unique(r))
- },
- addBack: function(e) {
- return this.add(e == null ? this.prevObject : this.prevObject.filter(e))
- }
- }), v.fn.andSelf = v.fn.addBack, v.each({
- parent: function(e) {
- var t = e.parentNode;
- return t && t.nodeType !== 11 ? t : null
- },
- parents: function(e) {
- return v.dir(e, "parentNode")
- },
- parentsUntil: function(e, t, n) {
- return v.dir(e, "parentNode", n)
- },
- next: function(e) {
- return at(e, "nextSibling")
- },
- prev: function(e) {
- return at(e, "previousSibling")
- },
- nextAll: function(e) {
- return v.dir(e, "nextSibling")
- },
- prevAll: function(e) {
- return v.dir(e, "previousSibling")
- },
- nextUntil: function(e, t, n) {
- return v.dir(e, "nextSibling", n)
- },
- prevUntil: function(e, t, n) {
- return v.dir(e, "previousSibling", n)
- },
- siblings: function(e) {
- return v.sibling((e.parentNode || {}).firstChild, e)
- },
- children: function(e) {
- return v.sibling(e.firstChild)
- },
- contents: function(e) {
- return v.nodeName(e, "iframe") ? e.contentDocument || e.contentWindow.document : v.merge([], e.childNodes)
- }
- }, function(e, t) {
- v.fn[e] = function(n, r) {
- var i = v.map(this, t, n);
- return nt.test(e) || (r = n), r && typeof r == "string" && (i = v.filter(r, i)), i = this.length > 1 && !ot[e] ? v.unique(i) : i, this.length > 1 && rt.test(e) && (i = i.reverse()), this.pushStack(i, e, l.call(arguments).join(","))
- }
- }), v.extend({
- filter: function(e, t, n) {
- return n && (e = ":not(" + e + ")"), t.length === 1 ? v.find.matchesSelector(t[0], e) ? [t[0]] : [] : v.find.matches(e, t)
- },
- dir: function(e, n, r) {
- var i = [],
- s = e[n];
- while (s && s.nodeType !== 9 && (r === t || s.nodeType !== 1 || !v(s).is(r))) s.nodeType === 1 && i.push(s), s = s[n];
- return i
- },
- sibling: function(e, t) {
- var n = [];
- for (; e; e = e.nextSibling) e.nodeType === 1 && e !== t && n.push(e);
- return n
- }
- });
- var ct = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
- ht = / jQuery\d+="(?:null|\d+)"/g,
- pt = /^\s+/,
- dt = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,
- vt = /<([\w:]+)/,
- mt = /
]", "i"),
- Et = /^(?:checkbox|radio)$/,
- St = /checked\s*(?:[^=]|=\s*.checked.)/i,
- xt = /\/(java|ecma)script/i,
- Tt = /^\s*\s*$/g,
- Nt = {
- option: [1, "
"],
- legend: [1, "
"],
- thead: [1, "
"],
- tr: [2, "
"],
- td: [3, "
"],
- col: [2, "
"],
- area: [1, "
"],
- _default: [0, "", ""]
- },
- Ct = lt(i),
- kt = Ct.appendChild(i.createElement("div"));
- Nt.optgroup = Nt.option, Nt.tbody = Nt.tfoot = Nt.colgroup = Nt.caption = Nt.thead, Nt.th = Nt.td, v.support.htmlSerialize || (Nt._default = [1, "X
", "
"]), v.fn.extend({
- text: function(e) {
- return v.access(this, function(e) {
- return e === t ? v.text(this) : this.empty().append((this[0] && this[0].ownerDocument || i).createTextNode(e))
- }, null, e, arguments.length)
- },
- wrapAll: function(e) {
- if (v.isFunction(e)) return this.each(function(t) {
- v(this).wrapAll(e.call(this, t))
- });
- if (this[0]) {
- var t = v(e, this[0].ownerDocument).eq(0).clone(!0);
- this[0].parentNode && t.insertBefore(this[0]), t.map(function() {
- var e = this;
- while (e.firstChild && e.firstChild.nodeType === 1) e = e.firstChild;
- return e
- }).append(this)
- }
- return this
- },
- wrapInner: function(e) {
- return v.isFunction(e) ? this.each(function(t) {
- v(this).wrapInner(e.call(this, t))
- }) : this.each(function() {
- var t = v(this),
- n = t.contents();
- n.length ? n.wrapAll(e) : t.append(e)
- })
- },
- wrap: function(e) {
- var t = v.isFunction(e);
- return this.each(function(n) {
- v(this).wrapAll(t ? e.call(this, n) : e)
- })
- },
- unwrap: function() {
- return this.parent().each(function() {
- v.nodeName(this, "body") || v(this).replaceWith(this.childNodes)
- }).end()
- },
- append: function() {
- return this.domManip(arguments, !0, function(e) {
- (this.nodeType === 1 || this.nodeType === 11) && this.appendChild(e)
- })
- },
- prepend: function() {
- return this.domManip(arguments, !0, function(e) {
- (this.nodeType === 1 || this.nodeType === 11) && this.insertBefore(e, this.firstChild)
- })
- },
- before: function() {
- if (!ut(this[0])) return this.domManip(arguments, !1, function(e) {
- this.parentNode.insertBefore(e, this)
- });
- if (arguments.length) {
- var e = v.clean(arguments);
- return this.pushStack(v.merge(e, this), "before", this.selector)
- }
- },
- after: function() {
- if (!ut(this[0])) return this.domManip(arguments, !1, function(e) {
- this.parentNode.insertBefore(e, this.nextSibling)
- });
- if (arguments.length) {
- var e = v.clean(arguments);
- return this.pushStack(v.merge(this, e), "after", this.selector)
- }
- },
- remove: function(e, t) {
- var n, r = 0;
- for (;
- (n = this[r]) != null; r++)
- if (!e || v.filter(e, [n]).length) !t && n.nodeType === 1 && (v.cleanData(n.getElementsByTagName("*")), v.cleanData([n])), n.parentNode && n.parentNode.removeChild(n);
- return this
- },
- empty: function() {
- var e, t = 0;
- for (;
- (e = this[t]) != null; t++) {
- e.nodeType === 1 && v.cleanData(e.getElementsByTagName("*"));
- while (e.firstChild) e.removeChild(e.firstChild)
- }
- return this
- },
- clone: function(e, t) {
- return e = e == null ? !1 : e, t = t == null ? e : t, this.map(function() {
- return v.clone(this, e, t)
- })
- },
- html: function(e) {
- return v.access(this, function(e) {
- var n = this[0] || {},
- r = 0,
- i = this.length;
- if (e === t) return n.nodeType === 1 ? n.innerHTML.replace(ht, "") : t;
- if (typeof e == "string" && !yt.test(e) && (v.support.htmlSerialize || !wt.test(e)) && (v.support.leadingWhitespace || !pt.test(e)) && !Nt[(vt.exec(e) || ["", ""])[1].toLowerCase()]) {
- e = e.replace(dt, "<$1>$2>");
- try {
- for (; r < i; r++) n = this[r] || {}, n.nodeType === 1 && (v.cleanData(n.getElementsByTagName("*")), n.innerHTML = e);
- n = 0
- } catch (s) {}
- }
- n && this.empty().append(e)
- }, null, e, arguments.length)
- },
- replaceWith: function(e) {
- return ut(this[0]) ? this.length ? this.pushStack(v(v.isFunction(e) ? e() : e), "replaceWith", e) : this : v.isFunction(e) ? this.each(function(t) {
- var n = v(this),
- r = n.html();
- n.replaceWith(e.call(this, t, r))
- }) : (typeof e != "string" && (e = v(e).detach()), this.each(function() {
- var t = this.nextSibling,
- n = this.parentNode;
- v(this).remove(), t ? v(t).before(e) : v(n).append(e)
- }))
- },
- detach: function(e) {
- return this.remove(e, !0)
- },
- domManip: function(e, n, r) {
- e = [].concat.apply([], e);
- var i, s, o, u, a = 0,
- f = e[0],
- l = [],
- c = this.length;
- if (!v.support.checkClone && c > 1 && typeof f == "string" && St.test(f)) return this.each(function() {
- v(this).domManip(e, n, r)
- });
- if (v.isFunction(f)) return this.each(function(i) {
- var s = v(this);
- e[0] = f.call(this, i, n ? s.html() : t), s.domManip(e, n, r)
- });
- if (this[0]) {
- i = v.buildFragment(e, this, l), o = i.fragment, s = o.firstChild, o.childNodes.length === 1 && (o = s);
- if (s) {
- n = n && v.nodeName(s, "tr");
- for (u = i.cacheable || c - 1; a < c; a++) r.call(n && v.nodeName(this[a], "table") ? Lt(this[a], "tbody") : this[a], a === u ? o : v.clone(o, !0, !0))
- }
- o = s = null, l.length && v.each(l, function(e, t) {
- t.src ? v.ajax ? v.ajax({
- url: t.src,
- type: "GET",
- dataType: "script",
- async: !1,
- global: !1,
- "throws": !0
- }) : v.error("no ajax") : v.globalEval((t.text || t.textContent || t.innerHTML || "").replace(Tt, "")), t.parentNode && t.parentNode.removeChild(t)
- })
- }
- return this
- }
- }), v.buildFragment = function(e, n, r) {
- var s, o, u, a = e[0];
- return n = n || i, n = !n.nodeType && n[0] || n, n = n.ownerDocument || n, e.length === 1 && typeof a == "string" && a.length < 512 && n === i && a.charAt(0) === "<" && !bt.test(a) && (v.support.checkClone || !St.test(a)) && (v.support.html5Clone || !wt.test(a)) && (o = !0, s = v.fragments[a], u = s !== t), s || (s = n.createDocumentFragment(), v.clean(e, n, s, r), o && (v.fragments[a] = u && s)), {
- fragment: s,
- cacheable: o
- }
- }, v.fragments = {}, v.each({
- appendTo: "append",
- prependTo: "prepend",
- insertBefore: "before",
- insertAfter: "after",
- replaceAll: "replaceWith"
- }, function(e, t) {
- v.fn[e] = function(n) {
- var r, i = 0,
- s = [],
- o = v(n),
- u = o.length,
- a = this.length === 1 && this[0].parentNode;
- if ((a == null || a && a.nodeType === 11 && a.childNodes.length === 1) && u === 1) return o[t](this[0]), this;
- for (; i < u; i++) r = (i > 0 ? this.clone(!0) : this).get(), v(o[i])[t](r), s = s.concat(r);
- return this.pushStack(s, e, o.selector)
- }
- }), v.extend({
- clone: function(e, t, n) {
- var r, i, s, o;
- v.support.html5Clone || v.isXMLDoc(e) || !wt.test("<" + e.nodeName + ">") ? o = e.cloneNode(!0) : (kt.innerHTML = e.outerHTML, kt.removeChild(o = kt.firstChild));
- if ((!v.support.noCloneEvent || !v.support.noCloneChecked) && (e.nodeType === 1 || e.nodeType === 11) && !v.isXMLDoc(e)) {
- Ot(e, o), r = Mt(e), i = Mt(o);
- for (s = 0; r[s]; ++s) i[s] && Ot(r[s], i[s])
- }
- if (t) {
- At(e, o);
- if (n) {
- r = Mt(e), i = Mt(o);
- for (s = 0; r[s]; ++s) At(r[s], i[s])
- }
- }
- return r = i = null, o
- },
- clean: function(e, t, n, r) {
- var s, o, u, a, f, l, c, h, p, d, m, g, y = t === i && Ct,
- b = [];
- if (!t || typeof t.createDocumentFragment == "undefined") t = i;
- for (s = 0;
- (u = e[s]) != null; s++) {
- typeof u == "number" && (u += "");
- if (!u) continue;
- if (typeof u == "string")
- if (!gt.test(u)) u = t.createTextNode(u);
- else {
- y = y || lt(t), c = t.createElement("div"), y.appendChild(c), u = u.replace(dt, "<$1>$2>"), a = (vt.exec(u) || ["", ""])[1].toLowerCase(), f = Nt[a] || Nt._default, l = f[0], c.innerHTML = f[1] + u + f[2];
- while (l--) c = c.lastChild;
- if (!v.support.tbody) {
- h = mt.test(u), p = a === "table" && !h ? c.firstChild && c.firstChild.childNodes : f[1] === "
" && !h ? c.childNodes : [];
- for (o = p.length - 1; o >= 0; --o) v.nodeName(p[o], "tbody") && !p[o].childNodes.length && p[o].parentNode.removeChild(p[o])
- }!v.support.leadingWhitespace && pt.test(u) && c.insertBefore(t.createTextNode(pt.exec(u)[0]), c.firstChild), u = c.childNodes, c.parentNode.removeChild(c)
- } u.nodeType ? b.push(u) : v.merge(b, u)
- }
- c && (u = c = y = null);
- if (!v.support.appendChecked)
- for (s = 0;
- (u = b[s]) != null; s++) v.nodeName(u, "input") ? _t(u) : typeof u.getElementsByTagName != "undefined" && v.grep(u.getElementsByTagName("input"), _t);
- if (n) {
- m = function(e) {
- if (!e.type || xt.test(e.type)) return r ? r.push(e.parentNode ? e.parentNode.removeChild(e) : e) : n.appendChild(e)
- };
- for (s = 0;
- (u = b[s]) != null; s++)
- if (!v.nodeName(u, "script") || !m(u)) n.appendChild(u), typeof u.getElementsByTagName != "undefined" && (g = v.grep(v.merge([], u.getElementsByTagName("script")), m), b.splice.apply(b, [s + 1, 0].concat(g)), s += g.length)
- }
- return b
- },
- cleanData: function(e, t) {
- var n, r, i, s, o = 0,
- u = v.expando,
- a = v.cache,
- f = v.support.deleteExpando,
- l = v.event.special;
- for (;
- (i = e[o]) != null; o++)
- if (t || v.acceptData(i)) {
- r = i[u], n = r && a[r];
- if (n) {
- if (n.events)
- for (s in n.events) l[s] ? v.event.remove(i, s) : v.removeEvent(i, s, n.handle);
- a[r] && (delete a[r], f ? delete i[u] : i.removeAttribute ? i.removeAttribute(u) : i[u] = null, v.deletedIds.push(r))
- }
- }
- }
- }),
- function() {
- var e, t;
- v.uaMatch = function(e) {
- e = e.toLowerCase();
- var t = /(chrome)[ \/]([\w.]+)/.exec(e) || /(webkit)[ \/]([\w.]+)/.exec(e) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e) || /(msie) ([\w.]+)/.exec(e) || e.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e) || [];
- return {
- browser: t[1] || "",
- version: t[2] || "0"
- }
- }, e = v.uaMatch(o.userAgent), t = {}, e.browser && (t[e.browser] = !0, t.version = e.version), t.chrome ? t.webkit = !0 : t.webkit && (t.safari = !0), v.browser = t, v.sub = function() {
- function e(t, n) {
- return new e.fn.init(t, n)
- }
- v.extend(!0, e, this), e.superclass = this, e.fn = e.prototype = this(), e.fn.constructor = e, e.sub = this.sub, e.fn.init = function(r, i) {
- return i && i instanceof v && !(i instanceof e) && (i = e(i)), v.fn.init.call(this, r, i, t)
- }, e.fn.init.prototype = e.fn;
- var t = e(i);
- return e
- }
- }();
- var Dt, Pt, Ht, Bt = /alpha\([^)]*\)/i,
- jt = /opacity=([^)]*)/,
- Ft = /^(top|right|bottom|left)$/,
- It = /^(none|table(?!-c[ea]).+)/,
- qt = /^margin/,
- Rt = new RegExp("^(" + m + ")(.*)$", "i"),
- Ut = new RegExp("^(" + m + ")(?!px)[a-z%]+$", "i"),
- zt = new RegExp("^([-+])=(" + m + ")", "i"),
- Wt = {
- BODY: "block"
- },
- Xt = {
- position: "absolute",
- visibility: "hidden",
- display: "block"
- },
- Vt = {
- letterSpacing: 0,
- fontWeight: 400
- },
- $t = ["Top", "Right", "Bottom", "Left"],
- Jt = ["Webkit", "O", "Moz", "ms"],
- Kt = v.fn.toggle;
- v.fn.extend({
- css: function(e, n) {
- return v.access(this, function(e, n, r) {
- return r !== t ? v.style(e, n, r) : v.css(e, n)
- }, e, n, arguments.length > 1)
- },
- show: function() {
- return Yt(this, !0)
- },
- hide: function() {
- return Yt(this)
- },
- toggle: function(e, t) {
- var n = typeof e == "boolean";
- return v.isFunction(e) && v.isFunction(t) ? Kt.apply(this, arguments) : this.each(function() {
- (n ? e : Gt(this)) ? v(this).show(): v(this).hide()
- })
- }
- }), v.extend({
- cssHooks: {
- opacity: {
- get: function(e, t) {
- if (t) {
- var n = Dt(e, "opacity");
- return n === "" ? "1" : n
- }
- }
- }
- },
- cssNumber: {
- fillOpacity: !0,
- fontWeight: !0,
- lineHeight: !0,
- opacity: !0,
- orphans: !0,
- widows: !0,
- zIndex: !0,
- zoom: !0
- },
- cssProps: {
- "float": v.support.cssFloat ? "cssFloat" : "styleFloat"
- },
- style: function(e, n, r, i) {
- if (!e || e.nodeType === 3 || e.nodeType === 8 || !e.style) return;
- var s, o, u, a = v.camelCase(n),
- f = e.style;
- n = v.cssProps[a] || (v.cssProps[a] = Qt(f, a)), u = v.cssHooks[n] || v.cssHooks[a];
- if (r === t) return u && "get" in u && (s = u.get(e, !1, i)) !== t ? s : f[n];
- o = typeof r, o === "string" && (s = zt.exec(r)) && (r = (s[1] + 1) * s[2] + parseFloat(v.css(e, n)), o = "number");
- if (r == null || o === "number" && isNaN(r)) return;
- o === "number" && !v.cssNumber[a] && (r += "px");
- if (!u || !("set" in u) || (r = u.set(e, r, i)) !== t) try {
- f[n] = r
- } catch (l) {}
- },
- css: function(e, n, r, i) {
- var s, o, u, a = v.camelCase(n);
- return n = v.cssProps[a] || (v.cssProps[a] = Qt(e.style, a)), u = v.cssHooks[n] || v.cssHooks[a], u && "get" in u && (s = u.get(e, !0, i)), s === t && (s = Dt(e, n)), s === "normal" && n in Vt && (s = Vt[n]), r || i !== t ? (o = parseFloat(s), r || v.isNumeric(o) ? o || 0 : s) : s
- },
- swap: function(e, t, n) {
- var r, i, s = {};
- for (i in t) s[i] = e.style[i], e.style[i] = t[i];
- r = n.call(e);
- for (i in t) e.style[i] = s[i];
- return r
- }
- }), e.getComputedStyle ? Dt = function(t, n) {
- var r, i, s, o, u = e.getComputedStyle(t, null),
- a = t.style;
- return u && (r = u.getPropertyValue(n) || u[n], r === "" && !v.contains(t.ownerDocument, t) && (r = v.style(t, n)), Ut.test(r) && qt.test(n) && (i = a.width, s = a.minWidth, o = a.maxWidth, a.minWidth = a.maxWidth = a.width = r, r = u.width, a.width = i, a.minWidth = s, a.maxWidth = o)), r
- } : i.documentElement.currentStyle && (Dt = function(e, t) {
- var n, r, i = e.currentStyle && e.currentStyle[t],
- s = e.style;
- return i == null && s && s[t] && (i = s[t]), Ut.test(i) && !Ft.test(t) && (n = s.left, r = e.runtimeStyle && e.runtimeStyle.left, r && (e.runtimeStyle.left = e.currentStyle.left), s.left = t === "fontSize" ? "1em" : i, i = s.pixelLeft + "px", s.left = n, r && (e.runtimeStyle.left = r)), i === "" ? "auto" : i
- }), v.each(["height", "width"], function(e, t) {
- v.cssHooks[t] = {
- get: function(e, n, r) {
- if (n) return e.offsetWidth === 0 && It.test(Dt(e, "display")) ? v.swap(e, Xt, function() {
- return tn(e, t, r)
- }) : tn(e, t, r)
- },
- set: function(e, n, r) {
- return Zt(e, n, r ? en(e, t, r, v.support.boxSizing && v.css(e, "boxSizing") === "border-box") : 0)
- }
- }
- }), v.support.opacity || (v.cssHooks.opacity = {
- get: function(e, t) {
- return jt.test((t && e.currentStyle ? e.currentStyle.filter : e.style.filter) || "") ? .01 * parseFloat(RegExp.$1) + "" : t ? "1" : ""
- },
- set: function(e, t) {
- var n = e.style,
- r = e.currentStyle,
- i = v.isNumeric(t) ? "alpha(opacity=" + t * 100 + ")" : "",
- s = r && r.filter || n.filter || "";
- n.zoom = 1;
- if (t >= 1 && v.trim(s.replace(Bt, "")) === "" && n.removeAttribute) {
- n.removeAttribute("filter");
- if (r && !r.filter) return
- }
- n.filter = Bt.test(s) ? s.replace(Bt, i) : s + " " + i
- }
- }), v(function() {
- v.support.reliableMarginRight || (v.cssHooks.marginRight = {
- get: function(e, t) {
- return v.swap(e, {
- display: "inline-block"
- }, function() {
- if (t) return Dt(e, "marginRight")
- })
- }
- }), !v.support.pixelPosition && v.fn.position && v.each(["top", "left"], function(e, t) {
- v.cssHooks[t] = {
- get: function(e, n) {
- if (n) {
- var r = Dt(e, t);
- return Ut.test(r) ? v(e).position()[t] + "px" : r
- }
- }
- }
- })
- }), v.expr && v.expr.filters && (v.expr.filters.hidden = function(e) {
- return e.offsetWidth === 0 && e.offsetHeight === 0 || !v.support.reliableHiddenOffsets && (e.style && e.style.display || Dt(e, "display")) === "none"
- }, v.expr.filters.visible = function(e) {
- return !v.expr.filters.hidden(e)
- }), v.each({
- margin: "",
- padding: "",
- border: "Width"
- }, function(e, t) {
- v.cssHooks[e + t] = {
- expand: function(n) {
- var r, i = typeof n == "string" ? n.split(" ") : [n],
- s = {};
- for (r = 0; r < 4; r++) s[e + $t[r] + t] = i[r] || i[r - 2] || i[0];
- return s
- }
- }, qt.test(e) || (v.cssHooks[e + t].set = Zt)
- });
- var rn = /%20/g,
- sn = /\[\]$/,
- on = /\r?\n/g,
- un = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
- an = /^(?:select|textarea)/i;
- v.fn.extend({
- serialize: function() {
- return v.param(this.serializeArray())
- },
- serializeArray: function() {
- return this.map(function() {
- return this.elements ? v.makeArray(this.elements) : this
- }).filter(function() {
- return this.name && !this.disabled && (this.checked || an.test(this.nodeName) || un.test(this.type))
- }).map(function(e, t) {
- var n = v(this).val();
- return n == null ? null : v.isArray(n) ? v.map(n, function(e, n) {
- return {
- name: t.name,
- value: e.replace(on, "\r\n")
- }
- }) : {
- name: t.name,
- value: n.replace(on, "\r\n")
- }
- }).get()
- }
- }), v.param = function(e, n) {
- var r, i = [],
- s = function(e, t) {
- t = v.isFunction(t) ? t() : t == null ? "" : t, i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t)
- };
- n === t && (n = v.ajaxSettings && v.ajaxSettings.traditional);
- if (v.isArray(e) || e.jquery && !v.isPlainObject(e)) v.each(e, function() {
- s(this.name, this.value)
- });
- else
- for (r in e) fn(r, e[r], n, s);
- return i.join("&").replace(rn, "+")
- };
- var ln, cn, hn = /#.*$/,
- pn = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg,
- dn = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,
- vn = /^(?:GET|HEAD)$/,
- mn = /^\/\//,
- gn = /\?/,
- yn = /