Προς το περιεχόμενο

Fancybox & autoclose window?


N1ghtW0lf

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπερα, εψαξα και δεν βρηκα κατι για αυτο και ποσταρω...

 

Φτιαχνω μια σελιδα στην οποια ανοιγω μια αλλη σελιδα μεσω του fancybox(σαν το lightbox) πατωντας σε ενα link.

 

Η σελιδα που ανοιγει μεσα στο fancybox ειναι μια φορμα επικοινωνιας και αυτο που θελω ειναι το εξης.

Η φόρμα επικοινωνίας μετα το submit σε πάει σε μια σελιδα επαληθευσης γραμμενη σε ASP και απο εκει μετα σε μια σελιδα html με ενα μύνημα "ευχαριστω κτλ κτλ".

Πως μπορω στην 3η πλεον σελιδα να κλεινει το fancybox αυτοματα?

Δημοσ.
Χρησιμοποιώντας αυτή την function δεν μπορείς να το κάνεις?

 

 

Φιλε macabre_sunsets δυστυχως δεν λειτουργει...

 

Αυτο το εβαλα στο declaration του fancybox οπως ειπες και...

$.fancybox.close

 

Αυτο εδω στο head της σελιδας στην οποια μενει στο τελος...μετα τα 3 redirects δηλαδη...

parent.$.fancybox.close();

Δημοσ.

N1ghtW0lf ,

 

το

>$.fancybox.close

δεν χρειάζεται να το βάλεις κάπου .. μόνο το

>parent.$.fancybox.close();

 

O macabre_sunsets, εννοεί αν έχεις κάποιο link που μπορούμε να δούμε το site/κώδικα στον αέρα να τρέχει, μπας και βρούμε το πρόβλημα κοιτώντας το source code..

Δημοσ.
Τι εννοεις να δωσω λινκ?????????

 

Σύνδεσμο στην ιστοσελίδα σου να διαβάσουμε κώδικα ;-)

Δημοσ.

Παραθετω τον κωδικα

για την πρωτη σελιδα απο την οποια καλω το το fancybox

>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Επικοινωνία</title>

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="fancybox/jquery.fancybox-1.3.1.pack.js"></script>
<script type="text/javascript" src="fancybox/jquery.easing-1.3.pack.js"></script>
<script type="text/javascript" src="fancybox/jquery.mousewheel-3.0.2.pack.js"></script>
<link rel="stylesheet" href="fancybox/jquery.fancybox-1.3.1.css" type="text/css" media="screen" />

<script type="text/javascript" > 
$(document).ready(function() {

/* This is basic - uses default settings */

$("a#single_image").fancybox();

/* Using custom settings */

$("a#inline").fancybox({
	'hideOnContentClick': true
});

/* Apply fancybox to multiple items */

$("a.group").fancybox({
	'transitionIn'	:	'elastic',
	'transitionOut'	:	'elastic',
	'speedIn'		:	600, 
	'speedOut'		:	200, 
	'overlayShow'	:	false
});

$("#contactus").fancybox({
			'width'				: '75%',
			'height'			: '90%',
			'autoScale'			: false,
			'transitionIn'		: 'none',
			'transitionOut'		: 'none',
			'type'				: 'iframe'
		});
$("#contactus2").fancybox({
			'width'				: '75%',
			'height'			: '90%',
			'autoScale'			: false,
			'transitionIn'		: 'none',
			'transitionOut'		: 'none',
			'type'				: 'iframe'
		});
				
$.fancybox.close();

});
</script> 
<body> 
 Designing: 
<a id="contactus" href="contactusGRJF.html">Text</a>
<a id="contactus2" href="contactusGRTK.html">Τάσος</a>
         
</body>
</html> 

 

 

Οι σελιδες *ΤΚ.html και *JF.html ανοιγουν σε fancybox...

 

Η καθε μια μετα παει σε μια 2η για την επαληθευση στοιχειων, μιας και ειναι φορμες επικοινωνιες, και σε μια 3η για το "thank you μπλα μπλα μπλα"

 

Η 3η σελιδα περιεχει αυτο...

 

>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>Contact_us</title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


<meta name="language" content="en" /> 
<body>

<script type="text/javascript">
parent.$.fancybox.close();
</script>
Thank you
</body>
</html> 

Δημοσ.

Ειναι οτι εχει η σελιδα για κατεβασμα...οπως ειναι...δεν τα εχω πειραξει...

Αυτα εδω ειναι...

 

 

>
jquery.fancybox-1.3.1.js

/*
* FancyBox - jQuery Plugin
* Simple and fancy lightbox alternative
*
* Examples and documentation at: http://fancybox.net
* 
* Copyright (c) 2008 - 2010 Janis Skarnelis
*
* Version: 1.3.1 (05/03/2010)
* Requires: jQuery v1.3+
*
* Dual licensed under the MIT and GPL licenses:
*   http://www.opensource.org/licenses/mit-license.php
*   http://www.gnu.org/licenses/gpl.html
*/

(function($) {

var tmp, loading, overlay, wrap, outer, inner, close, nav_left, nav_right,

	selectedIndex = 0, selectedOpts = {}, selectedArray = [], currentIndex = 0, currentOpts = {}, currentArray = [],

	ajaxLoader = null, imgPreloader = new Image(), imgRegExp = /\.(jpg|gif|png|bmp|jpeg)(.*)?$/i, swfRegExp = /[^\.]\.(swf)\s*$/i,

	loadingTimer, loadingFrame = 1,

	start_pos, final_pos, busy = false, shadow = 20, fx = $.extend($('<div/>')[0], { prop: 0 }), titleh = 0, 

	isIE6 = !$.support.opacity && !window.XMLHttpRequest,

	/*
	 * Private methods 
	 */

	fancybox_abort = function() {
		loading.hide();

		imgPreloader.onerror = imgPreloader.onload = null;

		if (ajaxLoader) {
			ajaxLoader.abort();
		}

		tmp.empty();
	},

	fancybox_error = function() {
		$.fancybox('<p id="fancybox_error">The requested content cannot be loaded.<br />Please try again later.</p>', {
			'scrolling'		: 'no',
			'padding'		: 20,
			'transitionIn'	: 'none',
			'transitionOut'	: 'none'
		});
	},

	fancybox_get_viewport = function() {
		return [ $(window).width(), $(window).height(), $(document).scrollLeft(), $(document).scrollTop() ];
	},

	fancybox_get_zoom_to = function () {
		var view	= fancybox_get_viewport(),
			to		= {},

			margin = currentOpts.margin,
			resize = currentOpts.autoScale,

			horizontal_space	= (shadow + margin) * 2,
			vertical_space		= (shadow + margin) * 2,
			double_padding		= (currentOpts.padding * 2),
			
			ratio;

		if (currentOpts.width.toString().indexOf('%') > -1) {
			to.width = ((view[0] * parseFloat(currentOpts.width)) / 100) - (shadow * 2) ;
			resize = false;

		} else {
			to.width = currentOpts.width + double_padding;
		}

		if (currentOpts.height.toString().indexOf('%') > -1) {
			to.height = ((view[1] * parseFloat(currentOpts.height)) / 100) - (shadow * 2);
			resize = false;

		} else {
			to.height = currentOpts.height + double_padding;
		}

		if (resize && (to.width > (view[0] - horizontal_space) || to.height > (view[1] - vertical_space))) {
			if (selectedOpts.type == 'image' || selectedOpts.type == 'swf') {
				horizontal_space	+= double_padding;
				vertical_space		+= double_padding;

				ratio = Math.min(Math.min( view[0] - horizontal_space, currentOpts.width) / currentOpts.width, Math.min( view[1] - vertical_space, currentOpts.height) / currentOpts.height);

				to.width	= Math.round(ratio * (to.width	- double_padding)) + double_padding;
				to.height	= Math.round(ratio * (to.height	- double_padding)) + double_padding;

			} else {
				to.width	= Math.min(to.width,	(view[0] - horizontal_space));
				to.height	= Math.min(to.height,	(view[1] - vertical_space));
			}
		}

		to.top	= view[3] + ((view[1] - (to.height	+ (shadow * 2 ))) * 0.5);
		to.left	= view[2] + ((view[0] - (to.width	+ (shadow * 2 ))) * 0.5);

		if (currentOpts.autoScale === false) {
			to.top	= Math.max(view[3] + margin, to.top);
			to.left	= Math.max(view[2] + margin, to.left);
		}

		return to;
	},

	fancybox_format_title = function(title) {
		if (title && title.length) {
			switch (currentOpts.titlePosition) {
				case 'inside':
					return title;
				case 'over':
					return '<span id="fancybox-title-over">' + title + '</span>';
				default:
					return '<span id="fancybox-title-wrap"><span id="fancybox-title-left"></span><span id="fancybox-title-main">' + title + '</span><span id="fancybox-title-right"></span></span>';
			}
		}

		return false;
	},

	fancybox_process_title = function() {
		var title	= currentOpts.title,
			width	= final_pos.width - (currentOpts.padding * 2),
			titlec	= 'fancybox-title-' + currentOpts.titlePosition;
			
		$('#fancybox-title').remove();

		titleh = 0;

		if (currentOpts.titleShow === false) {
			return;
		}

		title = $.isFunction(currentOpts.titleFormat) ? currentOpts.titleFormat(title, currentArray, currentIndex, currentOpts) : fancybox_format_title(title);

		if (!title || title === '') {
			return;
		}

		$('<div id="fancybox-title" class="' + titlec + '" />').css({
			'width'			: width,
			'paddingLeft'	: currentOpts.padding,
			'paddingRight'	: currentOpts.padding
		}).html(title).appendTo('body');

		switch (currentOpts.titlePosition) {
			case 'inside':
				titleh = $("#fancybox-title").outerHeight(true) - currentOpts.padding;
				final_pos.height += titleh;
			break;

			case 'over':
				$('#fancybox-title').css('bottom', currentOpts.padding);
			break;

			default:
				$('#fancybox-title').css('bottom', $("#fancybox-title").outerHeight(true) * -1);
			break;
		}

		$('#fancybox-title').appendTo( outer ).hide();
	},

	fancybox_set_navigation = function() {
		$(document).unbind('keydown.fb').bind('keydown.fb', function(e) {
			if (e.keyCode == 27 && currentOpts.enableEscapeButton) {
				e.preventDefault();
				$.fancybox.close();

			} else if (e.keyCode == 37) {
				e.preventDefault();
				$.fancybox.prev();

			} else if (e.keyCode == 39) {
				e.preventDefault();
				$.fancybox.next();
			}
		});

		if ($.fn.mousewheel) {
			wrap.unbind('mousewheel.fb');

			if (currentArray.length > 1) {
				wrap.bind('mousewheel.fb', function(e, delta) {
					e.preventDefault();

					if (busy || delta === 0) {
						return;
					}

					if (delta > 0) {
						$.fancybox.prev();
					} else {
						$.fancybox.next();
					}
				});
			}
		}

		if (!currentOpts.showNavArrows) { return; }

		if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex !== 0) {
			nav_left.show();
		}

		if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex != (currentArray.length -1)) {
			nav_right.show();
		}
	},

	fancybox_preload_images = function() {
		var href, 
			objNext;
			
		if ((currentArray.length -1) > currentIndex) {
			href = currentArray[ currentIndex + 1 ].href;

			if (typeof href !== 'undefined' && href.match(imgRegExp)) {
				objNext = new Image();
				objNext.src = href;
			}
		}

		if (currentIndex > 0) {
			href = currentArray[ currentIndex - 1 ].href;

			if (typeof href !== 'undefined' && href.match(imgRegExp)) {
				objNext = new Image();
				objNext.src = href;
			}
		}
	},

	_finish = function () {
		inner.css('overflow', (currentOpts.scrolling == 'auto' ? (currentOpts.type == 'image' || currentOpts.type == 'iframe' || currentOpts.type == 'swf' ? 'hidden' : 'auto') : (currentOpts.scrolling == 'yes' ? 'auto' : 'visible')));

		if (!$.support.opacity) {
			inner.get(0).style.removeAttribute('filter');
			wrap.get(0).style.removeAttribute('filter');
		}

		$('#fancybox-title').show();

		if (currentOpts.hideOnContentClick)	{
			inner.one('click', $.fancybox.close);
		}
		if (currentOpts.hideOnOverlayClick)	{
			overlay.one('click', $.fancybox.close);
		}

		if (currentOpts.showCloseButton) {
			close.show();
		}

		fancybox_set_navigation();

		$(window).bind("resize.fb", $.fancybox.center);

		if (currentOpts.centerOnScroll) {
			$(window).bind("scroll.fb", $.fancybox.center);
		} else {
			$(window).unbind("scroll.fb");
		}

		if ($.isFunction(currentOpts.onComplete)) {
			currentOpts.onComplete(currentArray, currentIndex, currentOpts);
		}

		busy = false;

		fancybox_preload_images();
	},

	fancybox_draw = function(pos) {
		var width	= Math.round(start_pos.width	+ (final_pos.width	- start_pos.width)	* pos),
			height	= Math.round(start_pos.height	+ (final_pos.height	- start_pos.height)	* pos),

			top		= Math.round(start_pos.top	+ (final_pos.top	- start_pos.top)	* pos),
			left	= Math.round(start_pos.left	+ (final_pos.left	- start_pos.left)	* pos);

		wrap.css({
			'width'		: width		+ 'px',
			'height'	: height	+ 'px',
			'top'		: top		+ 'px',
			'left'		: left		+ 'px'
		});

		width	= Math.max(width - currentOpts.padding * 2, 0);
		height	= Math.max(height - (currentOpts.padding * 2 + (titleh * pos)), 0);

		inner.css({
			'width'		: width		+ 'px',
			'height'	: height	+ 'px'
		});

		if (typeof final_pos.opacity !== 'undefined') {
			wrap.css('opacity', (pos < 0.5 ? 0.5 : pos));
		}
	},

	fancybox_get_obj_pos = function(obj) {
		var pos		= obj.offset();

		pos.top		+= parseFloat( obj.css('paddingTop') )	|| 0;
		pos.left	+= parseFloat( obj.css('paddingLeft') )	|| 0;

		pos.top		+= parseFloat( obj.css('border-top-width') )	|| 0;
		pos.left	+= parseFloat( obj.css('border-left-width') )	|| 0;

		pos.width	= obj.width();
		pos.height	= obj.height();

		return pos;
	},

	fancybox_get_zoom_from = function() {
		var orig = selectedOpts.orig ? $(selectedOpts.orig) : false,
			from = {},
			pos,
			view;

		if (orig && orig.length) {
			pos = fancybox_get_obj_pos(orig);

			from = {
				width	: (pos.width	+ (currentOpts.padding * 2)),
				height	: (pos.height	+ (currentOpts.padding * 2)),
				top		: (pos.top		- currentOpts.padding - shadow),
				left	: (pos.left		- currentOpts.padding - shadow)
			};
			
		} else {
			view = fancybox_get_viewport();

			from = {
				width	: 1,
				height	: 1,
				top		: view[3] + view[1] * 0.5,
				left	: view[2] + view[0] * 0.5
			};
		}

		return from;
	},

	fancybox_show = function() {
		loading.hide();

		if (wrap.is(":visible") && $.isFunction(currentOpts.onCleanup)) {
			if (currentOpts.onCleanup(currentArray, currentIndex, currentOpts) === false) {
				$.event.trigger('fancybox-cancel');

				busy = false;
				return;
			}
		}

		currentArray	= selectedArray;
		currentIndex	= selectedIndex;
		currentOpts		= selectedOpts;

		inner.get(0).scrollTop	= 0;
		inner.get(0).scrollLeft	= 0;

		if (currentOpts.overlayShow) {
			if (isIE6) {
				$('select:not(#fancybox-tmp select)').filter(function() {
					return this.style.visibility !== 'hidden';
				}).css({'visibility':'hidden'}).one('fancybox-cleanup', function() {
					this.style.visibility = 'inherit';
				});
			}

			overlay.css({
				'background-color'	: currentOpts.overlayColor,
				'opacity'			: currentOpts.overlayOpacity
			}).unbind().show();
		}

		final_pos = fancybox_get_zoom_to();

		fancybox_process_title();

		if (wrap.is(":visible")) {
			$( close.add( nav_left ).add( nav_right ) ).hide();

			var pos = wrap.position(),
				equal;

			start_pos = {
				top		:	pos.top ,
				left	:	pos.left,
				width	:	wrap.width(),
				height	:	wrap.height()
			};

			equal = (start_pos.width == final_pos.width && start_pos.height == final_pos.height);

			inner.fadeOut(currentOpts.changeFade, function() {
				var finish_resizing = function() {
					inner.html( tmp.contents() ).fadeIn(currentOpts.changeFade, _finish);
				};
				
				$.event.trigger('fancybox-change');

				inner.empty().css('overflow', 'hidden');

				if (equal) {
					inner.css({
						top			: currentOpts.padding,
						left		: currentOpts.padding,
						width		: Math.max(final_pos.width	- (currentOpts.padding * 2), 1),
						height		: Math.max(final_pos.height	- (currentOpts.padding * 2) - titleh, 1)
					});
					
					finish_resizing();

				} else {
					inner.css({
						top			: currentOpts.padding,
						left		: currentOpts.padding,
						width		: Math.max(start_pos.width	- (currentOpts.padding * 2), 1),
						height		: Math.max(start_pos.height	- (currentOpts.padding * 2), 1)
					});
					
					fx.prop = 0;

					$(fx).animate({ prop: 1 }, {
						 duration	: currentOpts.changeSpeed,
						 easing		: currentOpts.easingChange,
						 step		: fancybox_draw,
						 complete	: finish_resizing
					});
				}
			});

			return;
		}

		wrap.css('opacity', 1);

		if (currentOpts.transitionIn == 'elastic') {
			start_pos = fancybox_get_zoom_from();

			inner.css({
					top			: currentOpts.padding,
					left		: currentOpts.padding,
					width		: Math.max(start_pos.width	- (currentOpts.padding * 2), 1),
					height		: Math.max(start_pos.height	- (currentOpts.padding * 2), 1)
				})
				.html( tmp.contents() );

			wrap.css(start_pos).show();

			if (currentOpts.opacity) {
				final_pos.opacity = 0;
			}

			fx.prop = 0;

			$(fx).animate({ prop: 1 }, {
				 duration	: currentOpts.speedIn,
				 easing		: currentOpts.easingIn,
				 step		: fancybox_draw,
				 complete	: _finish
			});

		} else {
			inner.css({
					top			: currentOpts.padding,
					left		: currentOpts.padding,
					width		: Math.max(final_pos.width	- (currentOpts.padding * 2), 1),
					height		: Math.max(final_pos.height	- (currentOpts.padding * 2) - titleh, 1)
				})
				.html( tmp.contents() );

			wrap.css( final_pos ).fadeIn( currentOpts.transitionIn == 'none' ? 0 : currentOpts.speedIn, _finish );
		}
	},

	fancybox_process_inline = function() {
		tmp.width(	selectedOpts.width );
		tmp.height(	selectedOpts.height );

		if (selectedOpts.width	== 'auto') {
			selectedOpts.width = tmp.width();
		}
		if (selectedOpts.height	== 'auto') {
			selectedOpts.height	= tmp.height();
		}

		fancybox_show();
	},
	
	fancybox_process_image = function() {
		busy = true;

		selectedOpts.width	= imgPreloader.width;
		selectedOpts.height	= imgPreloader.height;

		$("<img />").attr({
			'id'	: 'fancybox-img',
			'src'	: imgPreloader.src,
			'alt'	: selectedOpts.title
		}).appendTo( tmp );

		fancybox_show();
	},

	fancybox_start = function() {
		fancybox_abort();

		var obj	= selectedArray[ selectedIndex ],
			href, 
			type, 
			title,
			str,
			emb,
			selector,
			data;

		selectedOpts = $.extend({}, $.fn.fancybox.defaults, (typeof $(obj).data('fancybox') == 'undefined' ? selectedOpts : $(obj).data('fancybox')));
		title = obj.title || $(obj).title || selectedOpts.title || '';
		
		if (obj.nodeName && !selectedOpts.orig) {
			selectedOpts.orig = $(obj).children("img:first").length ? $(obj).children("img:first") : $(obj);
		}

		if (title === '' && selectedOpts.orig) {
			title = selectedOpts.orig.attr('alt');
		}

		if (obj.nodeName && (/^(?:javascript|#)/i).test(obj.href)) {
			href = selectedOpts.href || null;
		} else {
			href = selectedOpts.href || obj.href || null;
		}

		if (selectedOpts.type) {
			type = selectedOpts.type;

			if (!href) {
				href = selectedOpts.content;
			}
			
		} else if (selectedOpts.content) {
			type	= 'html';

		} else if (href) {
			if (href.match(imgRegExp)) {
				type = 'image';

			} else if (href.match(swfRegExp)) {
				type = 'swf';

			} else if ($(obj).hasClass("iframe")) {
				type = 'iframe';

			} else if (href.match(/#/)) {
				obj = href.substr(href.indexOf("#"));

				type = $(obj).length > 0 ? 'inline' : 'ajax';
			} else {
				type = 'ajax';
			}
		} else {
			type = 'inline';
		}

		selectedOpts.type	= type;
		selectedOpts.href	= href;
		selectedOpts.title	= title;

		if (selectedOpts.autoDimensions && selectedOpts.type !== 'iframe' && selectedOpts.type !== 'swf') {
			selectedOpts.width		= 'auto';
			selectedOpts.height		= 'auto';
		}

		if (selectedOpts.modal) {
			selectedOpts.overlayShow		= true;
			selectedOpts.hideOnOverlayClick	= false;
			selectedOpts.hideOnContentClick	= false;
			selectedOpts.enableEscapeButton	= false;
			selectedOpts.showCloseButton	= false;
		}

		if ($.isFunction(selectedOpts.onStart)) {
			if (selectedOpts.onStart(selectedArray, selectedIndex, selectedOpts) === false) {
				busy = false;
				return;
			}
		}

		tmp.css('padding', (shadow + selectedOpts.padding + selectedOpts.margin));

		$('.fancybox-inline-tmp').unbind('fancybox-cancel').bind('fancybox-change', function() {
			$(this).replaceWith(inner.children());
		});

		switch (type) {
			case 'html' :
				tmp.html( selectedOpts.content );
				fancybox_process_inline();
			break;

			case 'inline' :
				$('<div class="fancybox-inline-tmp" />').hide().insertBefore( $(obj) ).bind('fancybox-cleanup', function() {
					$(this).replaceWith(inner.children());
				}).bind('fancybox-cancel', function() {
					$(this).replaceWith(tmp.children());
				});

				$(obj).appendTo(tmp);

				fancybox_process_inline();
			break;

			case 'image':
				busy = false;

				$.fancybox.showActivity();

				imgPreloader = new Image();

				imgPreloader.onerror = function() {
					fancybox_error();
				};

				imgPreloader.onload = function() {
					imgPreloader.onerror = null;
					imgPreloader.onload = null;
					fancybox_process_image();
				};

				imgPreloader.src = href;
	
			break;

			case 'swf':
				str = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + selectedOpts.width + '" height="' + selectedOpts.height + '"><param name="movie" value="' + href + '"></param>';
				emb = '';
				
				$.each(selectedOpts.swf, function(name, val) {
					str += '<param name="' + name + '" value="' + val + '"></param>';
					emb += ' ' + name + '="' + val + '"';
				});

				str += '<embed src="' + href + '" type="application/x-shockwave-flash" width="' + selectedOpts.width + '" height="' + selectedOpts.height + '"' + emb + '></embed></object>';

				tmp.html(str);

				fancybox_process_inline();
			break;

			case 'ajax':
				selector	= href.split('#', 2);
				data		= selectedOpts.ajax.data || {};

				if (selector.length > 1) {
					href = selector[0];

					if (typeof data == "string") {
						data += '&selector=' + selector[1];
					} else {
						data.selector = selector[1];
					}
				}

				busy = false;
				$.fancybox.showActivity();

				ajaxLoader = $.ajax($.extend(selectedOpts.ajax, {
					url		: href,
					data	: data,
					error	: fancybox_error,
					success : function(data, textStatus, XMLHttpRequest) {
						if (ajaxLoader.status == 200) {
							tmp.html( data );
							fancybox_process_inline();
						}
					}
				}));

			break;

			case 'iframe' :
				$('<iframe id="fancybox-frame" name="fancybox-frame' + new Date().getTime() + '" frameborder="0" hspace="0" scrolling="' + selectedOpts.scrolling + '" src="' + selectedOpts.href + '"></iframe>').appendTo(tmp);
				fancybox_show();
			break;
		}
	},

	fancybox_animate_loading = function() {
		if (!loading.is(':visible')){
			clearInterval(loadingTimer);
			return;
		}

		$('div', loading).css('top', (loadingFrame * -40) + 'px');

		loadingFrame = (loadingFrame + 1) % 12;
	},

	fancybox_init = function() {
		if ($("#fancybox-wrap").length) {
			return;
		}

		$('body').append(
			tmp			= $('<div id="fancybox-tmp"></div>'),
			loading		= $('<div id="fancybox-loading"><div></div></div>'),
			overlay		= $('<div id="fancybox-overlay"></div>'),
			wrap		= $('<div id="fancybox-wrap"></div>')
		);

		if (!$.support.opacity) {
			wrap.addClass('fancybox-ie');
			loading.addClass('fancybox-ie');
		}

		outer = $('<div id="fancybox-outer"></div>')
			.append('<div class="fancy-bg" id="fancy-bg-n"></div><div class="fancy-bg" id="fancy-bg-ne"></div><div class="fancy-bg" id="fancy-bg-e"></div><div class="fancy-bg" id="fancy-bg-se"></div><div class="fancy-bg" id="fancy-bg-s"></div><div class="fancy-bg" id="fancy-bg-sw"></div><div class="fancy-bg" id="fancy-bg-w"></div><div class="fancy-bg" id="fancy-bg-nw"></div>')
			.appendTo( wrap );

		outer.append(
			inner		= $('<div id="fancybox-inner"></div>'),
			close		= $('<a id="fancybox-close"></a>'),

			nav_left	= $('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'),
			nav_right	= $('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>')
		);

		close.click($.fancybox.close);
		loading.click($.fancybox.cancel);

		nav_left.click(function(e) {
			e.preventDefault();
			$.fancybox.prev();
		});

		nav_right.click(function(e) {
			e.preventDefault();
			$.fancybox.next();
		});

		if (isIE6) {
			overlay.get(0).style.setExpression('height',	"document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px'");
			loading.get(0).style.setExpression('top',		"(-20 + (document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop )) + 'px'");

			outer.prepend('<iframe id="fancybox-hide-sel-frame" src="javascript:\'\';" scrolling="no" frameborder="0" ></iframe>');
		}
	};

/*
 * Public methods 
 */

$.fn.fancybox = function(options) {
	$(this)
		.data('fancybox', $.extend({}, options, ($.metadata ? $(this).metadata() : {})))
		.unbind('click.fb').bind('click.fb', function(e) {
			e.preventDefault();

			if (busy) {
				return;
			}

			busy = true;

			$(this).blur();

			selectedArray	= [];
			selectedIndex	= 0;

			var rel = $(this).attr('rel') || '';

			if (!rel || rel == '' || rel === 'nofollow') {
				selectedArray.push(this);

			} else {
				selectedArray	= $("a[rel=" + rel + "], area[rel=" + rel + "]");
				selectedIndex	= selectedArray.index( this );
			}

			fancybox_start();

			return false;
		});

	return this;
};

$.fancybox = function(obj) {
	if (busy) {
		return;
	}

	busy = true;

	var opts = typeof arguments[1] !== 'undefined' ? arguments[1] : {};

	selectedArray	= [];
	selectedIndex	= opts.index || 0;

	if ($.isArray(obj)) {
		for (var i = 0, j = obj.length; i < j; i++) {
			if (typeof obj[i] == 'object') {
				$(obj[i]).data('fancybox', $.extend({}, opts, obj[i]));
			} else {
				obj[i] = $({}).data('fancybox', $.extend({content : obj[i]}, opts));
			}
		}

		selectedArray = jQuery.merge(selectedArray, obj);

	} else {
		if (typeof obj == 'object') {
			$(obj).data('fancybox', $.extend({}, opts, obj));
		} else {
			obj = $({}).data('fancybox', $.extend({content : obj}, opts));
		}

		selectedArray.push(obj);
	}

	if (selectedIndex > selectedArray.length || selectedIndex < 0) {
		selectedIndex = 0;
	}

	fancybox_start();
};

$.fancybox.showActivity = function() {
	clearInterval(loadingTimer);

	loading.show();
	loadingTimer = setInterval(fancybox_animate_loading, 66);
};

$.fancybox.hideActivity = function() {
	loading.hide();
};

$.fancybox.next = function() {
	return $.fancybox.pos( currentIndex + 1);
};

$.fancybox.prev = function() {
	return $.fancybox.pos( currentIndex - 1);
};

$.fancybox.pos = function(pos) {
	if (busy) {
		return;
	}

	pos = parseInt(pos, 10);

	if (pos > -1 && currentArray.length > pos) {
		selectedIndex = pos;
		fancybox_start();
	}

	if (currentOpts.cyclic && currentArray.length > 1 && pos < 0) {
		selectedIndex = currentArray.length - 1;
		fancybox_start();
	}

	if (currentOpts.cyclic && currentArray.length > 1 && pos >= currentArray.length) {
		selectedIndex = 0;
		fancybox_start();
	}

	return;
};

$.fancybox.cancel = function() {
	if (busy) {
		return;
	}

	busy = true;

	$.event.trigger('fancybox-cancel');

	fancybox_abort();

	if (selectedOpts && $.isFunction(selectedOpts.onCancel)) {
		selectedOpts.onCancel(selectedArray, selectedIndex, selectedOpts);
	}

	busy = false;
};

// Note: within an iframe use - parent.$.fancybox.close();
$.fancybox.close = function() {
	if (busy || wrap.is(':hidden')) {
		return;
	}

	busy = true;

	if (currentOpts && $.isFunction(currentOpts.onCleanup)) {
		if (currentOpts.onCleanup(currentArray, currentIndex, currentOpts) === false) {
			busy = false;
			return;
		}
	}

	fancybox_abort();

	$(close.add( nav_left ).add( nav_right )).hide();

	$('#fancybox-title').remove();

	wrap.add(inner).add(overlay).unbind();

	$(window).unbind("resize.fb scroll.fb");
	$(document).unbind('keydown.fb');

	function _cleanup() {
		overlay.fadeOut('fast');

		wrap.hide();

		$.event.trigger('fancybox-cleanup');

		inner.empty();

		if ($.isFunction(currentOpts.onClosed)) {
			currentOpts.onClosed(currentArray, currentIndex, currentOpts);
		}

		currentArray	= selectedOpts	= [];
		currentIndex	= selectedIndex	= 0;
		currentOpts		= selectedOpts	= {};

		busy = false;
	}

	inner.css('overflow', 'hidden');

	if (currentOpts.transitionOut == 'elastic') {
		start_pos = fancybox_get_zoom_from();

		var pos = wrap.position();

		final_pos = {
			top		:	pos.top ,
			left	:	pos.left,
			width	:	wrap.width(),
			height	:	wrap.height()
		};

		if (currentOpts.opacity) {
			final_pos.opacity = 1;
		}

		fx.prop = 1;

		$(fx).animate({ prop: 0 }, {
			 duration	: currentOpts.speedOut,
			 easing		: currentOpts.easingOut,
			 step		: fancybox_draw,
			 complete	: _cleanup
		});

	} else {
		wrap.fadeOut( currentOpts.transitionOut == 'none' ? 0 : currentOpts.speedOut, _cleanup);
	}
};

$.fancybox.resize = function() {
	var c, h;
	
	if (busy || wrap.is(':hidden')) {
		return;
	}

	busy = true;

	c = inner.wrapInner("<div style='overflow:auto'></div>").children();
	h = c.height();

	wrap.css({height:	h + (currentOpts.padding * 2) + titleh});
	inner.css({height:	h});

	c.replaceWith(c.children());

	$.fancybox.center();
};

$.fancybox.center = function() {
	busy = true;

	var view	= fancybox_get_viewport(),
		margin	= currentOpts.margin,
		to		= {};

	to.top	= view[3] + ((view[1] - ((wrap.height() - titleh) + (shadow * 2 ))) * 0.5);
	to.left	= view[2] + ((view[0] - (wrap.width() + (shadow * 2 ))) * 0.5);

	to.top	= Math.max(view[3] + margin, to.top);
	to.left	= Math.max(view[2] + margin, to.left);

	wrap.css(to);

	busy = false;
};

$.fn.fancybox.defaults = {
	padding				:	10,
	margin				:	20,
	opacity				:	false,
	modal				:	false,
	cyclic				:	false,
	scrolling			:	'auto',	// 'auto', 'yes' or 'no'

	width				:	560,
	height				:	340,

	autoScale			:	true,
	autoDimensions		:	true,
	centerOnScroll		:	false,

	ajax				:	{},
	swf					:	{ wmode: 'transparent' },

	hideOnOverlayClick	:	true,
	hideOnContentClick	:	false,

	overlayShow			:	true,
	overlayOpacity		:	0.3,
	overlayColor		:	'#666',

	titleShow			:	true,
	titlePosition		:	'outside',	// 'outside', 'inside' or 'over'
	titleFormat			:	null,

	transitionIn		:	'fade',	// 'elastic', 'fade' or 'none'
	transitionOut		:	'fade',	// 'elastic', 'fade' or 'none'

	speedIn				:	300,
	speedOut			:	300,

	changeSpeed			:	300,
	changeFade			:	'fast',

	easingIn			:	'swing',
	easingOut			:	'swing',

	showCloseButton		:	true,
	showNavArrows		:	true,
	enableEscapeButton	:	true,

	onStart				:	null,
	onCancel			:	null,
	onComplete			:	null,
	onCleanup			:	null,
	onClosed			:	null
};

$(document).ready(function() {
	fancybox_init();
});

})(jQuery);

 

>
jquery.fancybox-1.3.1.css

/*
* FancyBox - jQuery Plugin
* Simple and fancy lightbox alternative
*
* Examples and documentation at: http://fancybox.net
* 
* Copyright (c) 2008 - 2010 Janis Skarnelis
*
* Version: 1.3.1 (05/03/2010)
* Requires: jQuery v1.3+
*
* Dual licensed under the MIT and GPL licenses:
*   http://www.opensource.org/licenses/mit-license.php
*   http://www.gnu.org/licenses/gpl.html
*/

#fancybox-loading {
position: fixed;
top: 50%;
left: 50%;
height: 40px;
width: 40px;
margin-top: -20px;
margin-left: -20px;
cursor: pointer;
overflow: hidden;
z-index: 1104;
display: none;
}

* html #fancybox-loading {	/* IE6 */
position: absolute;
margin-top: 0;
}

#fancybox-loading div {
position: absolute;
top: 0;
left: 0;
width: 40px;
height: 480px;
background-image: url('fancybox.png');
}

#fancybox-overlay {
position: fixed;
top: 0;
left: 0;
bottom: 0;
right: 0;
background: #000;
z-index: 1100;
display: none;
}

* html #fancybox-overlay {	/* IE6 */
position: absolute;
width: 100%;
}

#fancybox-tmp {
padding: 0;
margin: 0;
border: 0;
overflow: auto;
display: none;
}

#fancybox-wrap {
position: absolute;
top: 0;
left: 0;
margin: 0;
padding: 20px;
z-index: 1101;
display: none;
}

#fancybox-outer {
position: relative;
width: 100%;
height: 100%;
background: #FFF;
}

#fancybox-inner {
position: absolute;
top: 0;
left: 0;
width: 1px;
height: 1px;
padding: 0;
margin: 0;
outline: none;
overflow: hidden;
}

#fancybox-hide-sel-frame {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: transparent;
}

#fancybox-close {
position: absolute;
top: -15px;
right: -15px;
width: 30px;
height: 30px;
background-image: url('fancybox.png');
background-position: -40px 0px;
cursor: pointer;
z-index: 1103;
display: none;
}

#fancybox_error {
color: #444;
font: normal 12px/20px Arial;
padding: 7px;
margin: 0;
}

#fancybox-content {
height: auto;
width: auto;
padding: 0;
margin: 0;
}

#fancybox-img {
width: 100%;
height: 100%;
padding: 0;
margin: 0;
border: none;
outline: none;
line-height: 0;
vertical-align: top;
-ms-interpolation-mode: bicubic;
}

#fancybox-frame {
position: relative;
width: 100%;
height: 100%;
border: none;
display: block;
}

#fancybox-title {
position: absolute;
bottom: 0;
left: 0;
font-family: Arial;
font-size: 12px;
z-index: 1102;
}

.fancybox-title-inside {
padding: 10px 0;
text-align: center;
color: #333;
}

.fancybox-title-outside {
padding-top: 5px;
color: #FFF;
text-align: center;
font-weight: bold;
}

.fancybox-title-over {
color: #FFF;
text-align: left;
}

#fancybox-title-over {
padding: 10px;
background-image: url('fancy_title_over.png');
display: block;
}

#fancybox-title-wrap {
display: inline-block;
}

#fancybox-title-wrap span {
height: 32px;
float: left;
}

#fancybox-title-left {
padding-left: 15px;
background-image: url('fancybox.png');
background-position: -40px -90px;
background-repeat: no-repeat;
}

#fancybox-title-main {
font-weight: bold;
line-height: 29px;
background-image: url('fancybox-x.png');
background-position: 0px -40px;
color: #FFF;
}

#fancybox-title-right {
padding-left: 15px;
background-image: url('fancybox.png');
background-position: -55px -90px;
background-repeat: no-repeat;
}

#fancybox-left, #fancybox-right {
position: absolute;
bottom: 0px;
height: 100%;
width: 35%;
cursor: pointer;
outline: none;
background-image: url('blank.gif');
z-index: 1102;
display: none;
}

#fancybox-left {
left: 0px;
}

#fancybox-right {
right: 0px;
}

#fancybox-left-ico, #fancybox-right-ico {
position: absolute;
top: 50%;
left: -9999px;
width: 30px;
height: 30px;
margin-top: -15px;
cursor: pointer;
z-index: 1102;
display: block;
}

#fancybox-left-ico {
background-image: url('fancybox.png');
background-position: -40px -30px;
}

#fancybox-right-ico {
background-image: url('fancybox.png');
background-position: -40px -60px;
}

#fancybox-left:hover, #fancybox-right:hover {
visibility: visible;    /* IE6 */
}

#fancybox-left:hover span {
left: 20px;
}

#fancybox-right:hover span {
left: auto;
right: 20px;
}

.fancy-bg {
position: absolute;
padding: 0;
margin: 0;
border: 0;
width: 20px;
height: 20px;
z-index: 1001;
}

#fancy-bg-n {
top: -20px;
left: 0;
width: 100%;
background-image: url('fancybox-x.png');
}

#fancy-bg-ne {
top: -20px;
right: -20px;
background-image: url('fancybox.png');
background-position: -40px -162px;
}

#fancy-bg-e {
top: 0;
right: -20px;
height: 100%;
background-image: url('fancybox-y.png');
background-position: -20px 0px;
}

#fancy-bg-se {
bottom: -20px;
right: -20px;
background-image: url('fancybox.png');
background-position: -40px -182px; 
}

#fancy-bg-s {
bottom: -20px;
left: 0;
width: 100%;
background-image: url('fancybox-x.png');
background-position: 0px -20px;
}

#fancy-bg-sw {
bottom: -20px;
left: -20px;
background-image: url('fancybox.png');
background-position: -40px -142px;
}

#fancy-bg-w {
top: 0;
left: -20px;
height: 100%;
background-image: url('fancybox-y.png');
}

#fancy-bg-nw {
top: -20px;
left: -20px;
background-image: url('fancybox.png');
background-position: -40px -122px;
}

/* IE */

#fancybox-loading.fancybox-ie div	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_loading.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-close		{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_close.png', sizingMethod='scale'); }

.fancybox-ie #fancybox-title-over	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_title_over.png', sizingMethod='scale'); zoom: 1; }
.fancybox-ie #fancybox-title-left	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_title_left.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-title-main	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_title_main.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-title-right	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_title_right.png', sizingMethod='scale'); }

.fancybox-ie #fancybox-left-ico		{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_nav_left.png', sizingMethod='scale'); }
.fancybox-ie #fancybox-right-ico	{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_nav_right.png', sizingMethod='scale'); }

.fancybox-ie .fancy-bg { background: transparent !important; }

.fancybox-ie #fancy-bg-n	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_n.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-ne	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_ne.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-e	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_e.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-se	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_se.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-s	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_s.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-sw	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_sw.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-w	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_w.png', sizingMethod='scale'); }
.fancybox-ie #fancy-bg-nw	{ filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancy_shadow_nw.png', sizingMethod='scale'); }

 

Νομιζω πως τα υπολοιπα δεν χρειαζονται...εχουν unformatted javascript μεσα χωρις κενα και δεν διαβαζεται με τιποτα...

Δημοσ.
Νομιζω πως τα υπολοιπα δεν χρειαζονται...εχουν unformatted javascript μεσα χωρις κενα και δεν διαβαζεται με τιποτα...

Δοκίμασε να κάνεις paste τον κώδικα των "unformatted" *.js εδώ και πάτα Beautify.

 

Επίσης, εξήγησε λίγο καλύτερα τι παίζει με τις σελίδες.

α) Κάνεις click το link και ανοίγει το fancybox.

β) Κάνεις ότι είναι να κάνεις μέσα στο fancybox.

γ) Η επαλήθευση γίνεται μέσα στο fancybox?

δ) Φορτώνει νέα σελίδα (πίσω από το fancybox) και παραμένει το fancybox ανοιχτό (γίνεται αυτό?)? Μέσα στο fancybox φαίνεται το "thank you και τα λοιπά"?

 

Δοκίμασε να χρησιμοποιήσεις αυτό το ακόλουθο στην τελευταία σελίδα :

><script type="text/javascript" > 
$(document).ready(function() {
parent.$.fn.fancybox.close();
}
</script>

ή

><script type="text/javascript" > 
$(document).ready(function() {
$.fn.fancybox.close();
}
</script>

Δημοσ.

H επαληθευση γινεται με ASP...

 

η contactus.html ----> validation.asp -----> after.html

Απο την πρωτη γινεται με το submit, στη 2η γινεται με response.redirect

 

τα unformatted *.js

 

 

 

> jquery-1.4.2.min.js
/*!
* jQuery JavaScript Library v1.4.2
* http://jquery.com/
*
* Copyright 2010, John Resig
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* Includes Sizzle.js
* http://sizzlejs.com/
* Copyright 2010, The Dojo Foundation
* Released under the MIT, BSD, and GPL Licenses.
*
* Date: Sat Feb 13 22:33:48 2010 -0500
*/
(function (A, w) {
   function ma() {
       if (!c.isReady) {
           try {
               s.documentElement.doScroll("left")
           } catch (a) {
               setTimeout(ma, 1);
               return
           }
           c.ready()
       }
   }
   function Qa(a,  {
       b.src ? c.ajax({
           url: b.src,
           async: false,
           dataType: "script"
       }) : c.globalEval(b.text || b.textContent || b.innerHTML || "");
       b.parentNode && b.parentNode.removeChild(
   }
   function X(a, b, d, f, e, j) {
       var i = a.length;
       if (typeof b === "object") {
           for (var o in  X(a, o, b[o], f, e, d);
           return a
       }
       if (d !== w) {
           f = !j && f && c.isFunction(d);
           for (o = 0; o < i; o++) e(a[o], b, f ? d.call(a[o], o, e(a[o], ) : d, j);
           return a
       }
       return i ? e(a[0],  : w
   }
   function J() {
       return (new Date).getTime()
   }
   function Y() {
       return false
   }
   function Z() {
       return true
   }
   function na(a, b, d) {
       d[0].type = a;
       return c.event.handle.apply(b, d)
   }
   function oa(a) {
       var b, d = [],
           f = [],
           e = arguments,
           j, i, o, k, n, r;
       i = c.data(this, "events");
       if (!(a.liveFired === this || !i || !i.live || a.button && a.type === "click")) {
               a.liveFired = this;
               var u = i.live.slice(0);
               for (k = 0; k < u.length; k++) {
                   i = u[k];
                   i.origType.replace(O, "") === a.type ? f.push(i.selector) : u.splice(k--, 1)
               }
               j = c(a.target).closest(f, a.currentTarget);
               n = 0;
               for (r =
               j.length; n < r; n++) for (k = 0; k < u.length; k++) {
                   i = u[k];
                   if (j[n].selector === i.selector) {
                       o = j[n].elem;
                       f = null;
                       if (i.preType === "mouseenter" || i.preType === "mouseleave") f = c(a.relatedTarget).closest(i.selector)[0];
                       if (!f || f !== o) d.push({
                           elem: o,
                           handleObj: i
                       })
                   }
               }
               n = 0;
               for (r = d.length; n < r; n++) {
                   j = d[n];
                   a.currentTarget = j.elem;
                   a.data = j.handleObj.data;
                   a.handleObj = j.handleObj;
                   if (j.handleObj.origHandler.apply(j.elem, e) === false) {
                       b = false;
                       break
                   }
               }
               return b
           }
   }
   function pa(a,  {
       return "live." + (a && a !== "*" ? a + "." : "") + b.replace(/\./g, "`").replace(/ /g, "&")
   }
   function qa(a) {
       return !a || !a.parentNode || a.parentNode.nodeType === 11
   }
   function ra(a,  {
       var d = 0;
       b.each(function () {
           if (this.nodeName === (a[d] && a[d].nodeName)) {
               var f = c.data(a[d++]),
                   e = c.data(this, f);
               if (f = f && f.events) {
                       delete e.handle;
                       e.events = {};
                       for (var j in f) for (var i in f[j]) c.event.add(this, j, f[j][i], f[j][i].data)
                   }
           }
       })
   }
   function sa(a, b, d) {
       var f, e, j;
       b = b && b[0] ? b[0].ownerDocument || b[0] : s;
       if (a.length === 1 && typeof a[0] === "string" && a[0].length < 512 && b === s && !ta.test(a[0]) && (c.support.checkClone || !ua.test(a[0]))) {
           e =
           true;
           if (j = c.fragments[a[0]]) if (j !== 1) f = j
       }
       if (!f) {
           f = b.createDocumentFragment();
           c.clean(a, b, f, d)
       }
       if (e) c.fragments[a[0]] = j ? f : 1;
       return {
           fragment: f,
           cacheable: e
       }
   }
   function K(a,  {
       var d = {};
       c.each(va.concat.apply([], va.slice(0, ), function () {
           d[this] = a
       });
       return d
   }
   function wa(a) {
       return "scrollTo" in a && a.document ? a : a.nodeType === 9 ? a.defaultView || a.parentWindow : false
   }
   var c = function (a,  {
       return new c.fn.init(a, 
   },
       Ra = A.jQuery,
       Sa = A.$,
       s = A.document,
       T, Ta = /^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,
       Ua = /^.[^:#\[\.,]*$/,
       Va = /\S/,
       Wa = /^(\s|\u00A0)+|(\s|\u00A0)+$/g,
       Xa = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
       P = navigator.userAgent,
       xa = false,
       Q = [],
       L, $ = Object.prototype.toString,
       aa = Object.prototype.hasOwnProperty,
       ba = Array.prototype.push,
       R = Array.prototype.slice,
       ya = Array.prototype.indexOf;
   c.fn = c.prototype = {
           init: function (a,  {
               var d, f;
               if (!a) return this;
               if (a.nodeType) {
                   this.context = this[0] = a;
                   this.length = 1;
                   return this
               }
               if (a === "body" && ! {
                   this.context = s;
                   this[0] = s.body;
                   this.selector = "body";
                   this.length = 1;
                   return this
               }
               if (typeof a === "string") if ((d = Ta.exec(a)) && (d[1] || !) if (d[1]) {
                   f = b ? b.ownerDocument || b : s;
                   if (a = Xa.exec(a)) if (c.isPlainObject() {
                       a = [s.createElement(a[1])];
                       c.fn.attr.call(a, b, true)
                   } else a = [f.createElement(a[1])];
                   else {
                       a = sa([d[1]], [f]);
                       a = (a.cacheable ? a.fragment.cloneNode(true) : a.fragment).childNodes
                   }
                   return c.merge(this, a)
               } else {
                   if (b = s.getElementById(d[2])) {
                       if (b.id !== d[2]) return T.find(a);
                       this.length = 1;
                       this[0] = b
                   }
                   this.context = s;
                   this.selector = a;
                   return this
               } else if (!b && /^\w+$/.test(a)) {
                   this.selector = a;
                   this.context = s;
                   a = s.getElementsByTagName(a);
                   return c.merge(this, a)
               } else return !b || b.jquery ? (b || T).find(a) : c(.find(a);
               else if (c.isFunction(a)) return T.ready(a);
               if (a.selector !== w) {
                   this.selector = a.selector;
                   this.context = a.context
               }
               return c.makeArray(a, this)
           },
           selector: "",
           jquery: "1.4.2",
           length: 0,
           size: function () {
               return this.length
           },
           toArray: function () {
               return R.call(this, 0)
           },
           get: function (a) {
               return a == null ? this.toArray() : a < 0 ? this.slice(a)[0] : this[a]
           },
           pushStack: function (a, b, d) {
               var f = c();
               c.isArray(a) ? ba.apply(f, a) : c.merge(f, a);
               f.prevObject = this;
               f.context = this.context;
               if (b === "find") f.selector = this.selector + (this.selector ? " " : "") + d;
               else if ( f.selector = this.selector + "." + b + "(" + d + ")";
               return f
           },
           each: function (a,  {
               return c.each(this, a, 
           },
           ready: function (a) {
               c.bindReady();
               if (c.isReady) a.call(s, c);
               else Q && Q.push(a);
               return this
           },
           eq: function (a) {
               return a === -1 ? this.slice(a) : this.slice(a, +a + 1)
           },
           first: function () {
               return this.eq(0)
           },
           last: function () {
               return this.eq(-1)
           },
           slice: function () {
               return this.pushStack(R.apply(this, arguments), "slice", R.call(arguments).join(","))
           },
           map: function (a) {
               return this.pushStack(c.map(this, function (b, d) {
                   return a.call(b, d, 
               }))
           },
           end: function () {
               return this.prevObject || c(null)
           },
           push: ba,
           sort: [].sort,
           splice: [].splice
       };
   c.fn.init.prototype = c.fn;
   c.extend = c.fn.extend = function () {
           var a = arguments[0] || {},
               b = 1,
               d = arguments.length,
               f = false,
               e, j, i, o;
           if (typeof a === "boolean") {
                   f = a;
                   a = arguments[1] || {};
                   b = 2
               }
           if (typeof a !== "object" && !c.isFunction(a)) a = {};
           if (d ===  {
                   a = this;
                   --b
               }
           for (; b < d; b++) if ((e = arguments[b]) != null) for (j in e) {
                   i = a[j];
                   o = e[j];
                   if (a !== o) if (f && o && (c.isPlainObject(o) || c.isArray(o))) {
                       i = i && (c.isPlainObject(i) || c.isArray(i)) ? i : c.isArray(o) ? [] : {};
                       a[j] = c.extend(f, i, o)
                   } else if (o !== w) a[j] = o
               }
           return a
       };
   c.extend({
           noConflict: function (a) {
               A.$ = Sa;
               if (a) A.jQuery = Ra;
               return c
           },
           isReady: false,
           ready: function () {
               if (!c.isReady) {
                   if (!s.body) return setTimeout(c.ready, 13);
                   c.isReady = true;
                   if (Q) {
                       for (var a, b = 0; a = Q[b++] a.call(s, c);
                       Q = null
                   }
                   c.fn.triggerHandler && c(s).triggerHandler("ready")
               }
           },
           bindReady: function () {
               if (!xa) {
                   xa = true;
                   if (s.readyState === "complete") return c.ready();
                   if (s.addEventListener) {
                       s.addEventListener("DOMContentLoaded", L, false);
                       A.addEventListener("load", c.ready, false)
                   } else if (s.attachEvent) {
                       s.attachEvent("onreadystatechange", L);
                       A.attachEvent("onload", c.ready);
                       var a = false;
                       try {
                           a = A.frameElement == null
                       } catch ( {}
                       s.documentElement.doScroll && a && ma()
                   }
               }
           },
           isFunction: function (a) {
               return $.call(a) === "[object Function]"
           },
           isArray: function (a) {
               return $.call(a) === "[object Array]"
           },
           isPlainObject: function (a) {
               if (!a || $.call(a) !== "[object Object]" || a.nodeType || a.setInterval) return false;
               if (a.constructor && !aa.call(a, "constructor") && !aa.call(a.constructor.prototype, "isPrototypeOf")) return false;
               var b;
               for (b in a);
               return b === w || aa.call(a, 
           },
           isEmptyObject: function (a) {
               for (var b in a) return false;
               return true
           },
           error: function (a) {
               throw a;
           },
           parseJSON: function (a) {
               if (typeof a !== "string" || !a) return null;
               a = c.trim(a);
               if (/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) return A.JSON && A.JSON.parse ? A.JSON.parse(a) : (new Function("return " + a))();
               else c.error("Invalid JSON: " + a)
           },
           noop: function () {},
           globalEval: function (a) {
               if (a && Va.test(a)) {
                   var b = s.getElementsByTagName("head")[0] || s.documentElement,
                       d = s.createElement("script");
                   d.type = "text/javascript";
                   if (c.support.scriptEval) d.appendChild(s.createTextNode(a));
                   else d.text = a;
                   b.insertBefore(d, b.firstChild);
                   b.removeChild(d)
               }
           },
           nodeName: function (a,  {
               return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase()
           },
           each: function (a, b, d) {
               var f, e = 0,
                   j = a.length,
                   i = j === w || c.isFunction(a);
               if (d) if (i) for (f in a) {
                       if (b.apply(a[f], d) === false) break
                   } else for (; e < j;) {
                       if (b.apply(a[e++], d) === false) break
                   } else if (i) for (f in a) {
                       if (b.call(a[f], f, a[f]) === false) break
                   } else for (d = a[0]; e < j && b.call(d, e, d) !== false; d = a[++e]);
               return a
           },
           trim: function (a) {
               return (a || "").replace(Wa, "")
           },
           makeArray: function (a,  {
               b = b || [];
               if (a != null) a.length == null || typeof a === "string" || c.isFunction(a) || typeof a !== "function" && a.setInterval ? ba.call(b, a) : c.merge(b, a);
               return b
           },
           inArray: function (a,  {
               if (b.indexOf) return b.indexOf(a);
               for (var d = 0, f = b.length; d < f; d++) if (b[d] === a) return d;
               return -1
           },
           merge: function (a,  {
               var d = a.length,
                   f = 0;
               if (typeof b.length === "number") for (var e = b.length; f < e; f++) a[d++] = b[f];
               else for (; b[f] !== w;) a[d++] = b[f++];
               a.length = d;
               return a
           },
           grep: function (a, b, d) {
               for (var f = [], e = 0, j = a.length; e < j; e++)!d !== !b(a[e], e) && f.push(a[e]);
               return f
           },
           map: function (a, b, d) {
               for (var f = [], e, j = 0, i = a.length; j < i; j++) {
                   e = b(a[j], j, d);
                   if (e != null) f[f.length] = e
               }
               return f.concat.apply([], f)
           },
           guid: 1,
           proxy: function (a, b, d) {
               if (arguments.length === 2) if (typeof b === "string") {
                   d = a;
                   a = d[b];
                   b = w
               } else if (b && !c.isFunction() {
                   d = b;
                   b = w
               }
               if (!b && a) b = function () {
                   return a.apply(d || this, arguments)
               };
               if (a) b.guid = a.guid = a.guid || b.guid || c.guid++;
               return b
           },
           uaMatch: function (a) {
               a = a.toLowerCase();
               a = /(webkit)[ \/]([\w.]+)/.exec(a) || /(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a) || /(msie) ([\w.]+)/.exec(a) || !/compatible/.test(a) && /(mozilla)(?:.*? rv:([\w.]+))?/.exec(a) || [];
               return {
                   browser: a[1] || "",
                   version: a[2] || "0"
               }
           },
           browser: {}
       });
   P = c.uaMatch(P);
   if (P.browser) {
           c.browser[P.browser] = true;
           c.browser.version = P.version
       }
   if (c.browser.webkit) c.browser.safari = true;
   if (ya) c.inArray = function (a,  {
           return ya.call(b, a)
       };
   T = c(s);
   if (s.addEventListener) L = function () {
           s.removeEventListener("DOMContentLoaded", L, false);
           c.ready()
       };
   else if (s.attachEvent) L = function () {
           if (s.readyState === "complete") {
               s.detachEvent("onreadystatechange", L);
               c.ready()
           }
       };
       (function () {
           c.support = {};
           var a = s.documentElement,
               b = s.createElement("script"),
               d = s.createElement("div"),
               f = "script" + J();
           d.style.display = "none";
           d.innerHTML = "   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
           var e = d.getElementsByTagName("*"),
               j = d.getElementsByTagName("a")[0];
           if (!(!e || !e.length || !j)) {
                   c.support = {
                       leadingWhitespace: d.firstChild.nodeType === 3,
                       tbody: !d.getElementsByTagName("tbody").length,
                       htmlSerialize: !! d.getElementsByTagName("link").length,
                       style: /red/.test(j.getAttribute("style")),
                       hrefNormalized: j.getAttribute("href") === "/a",
                       opacity: /^0.55$/.test(j.style.opacity),
                       cssFloat: !! j.style.cssFloat,
                       checkOn: d.getElementsByTagName("input")[0].value === "on",
                       optSelected: s.createElement("select").appendChild(s.createElement("option")).selected,
                       parentNode: d.removeChild(d.appendChild(s.createElement("div"))).parentNode === null,
                       deleteExpando: true,
                       checkClone: false,
                       scriptEval: false,
                       noCloneEvent: true,
                       boxModel: null
                   };
                   b.type = "text/javascript";
                   try {
                       b.appendChild(s.createTextNode("window." + f + "=1;"))
                   } catch (i) {}
                   a.insertBefore(b, a.firstChild);
                   if (A[f]) {
                       c.support.scriptEval = true;
                       delete A[f]
                   }
                   try {
                       delete b.test
                   } catch (o) {
                       c.support.deleteExpando = false
                   }
                   a.removeChild(;
                   if (d.attachEvent && d.fireEvent) {
                       d.attachEvent("onclick", function k() {
                           c.support.noCloneEvent =
                           false;
                           d.detachEvent("onclick", k)
                       });
                       d.cloneNode(true).fireEvent("onclick")
                   }
                   d = s.createElement("div");
                   d.innerHTML = "<input type='radio' name='radiotest' checked='checked'/>";
                   a = s.createDocumentFragment();
                   a.appendChild(d.firstChild);
                   c.support.checkClone = a.cloneNode(true).cloneNode(true).lastChild.checked;
                   c(function () {
                       var k = s.createElement("div");
                       k.style.width = k.style.paddingLeft = "1px";
                       s.body.appendChild(k);
                       c.boxModel = c.support.boxModel = k.offsetWidth === 2;
                       s.body.removeChild(k).style.display = "none"
                   });
                   a = function (k) {
                       var n =
                       s.createElement("div");
                       k = "on" + k;
                       var r = k in n;
                       if (!r) {
                           n.setAttribute(k, "return;");
                           r = typeof n[k] === "function"
                       }
                       return r
                   };
                   c.support.submitBubbles = a("submit");
                   c.support.changeBubbles = a("change");
                   a = b = d = e = j = null
               }
       })();
   c.props = {
           "for": "htmlFor",
           "class": "className",
           readonly: "readOnly",
           maxlength: "maxLength",
           cellspacing: "cellSpacing",
           rowspan: "rowSpan",
           colspan: "colSpan",
           tabindex: "tabIndex",
           usemap: "useMap",
           frameborder: "frameBorder"
       };
   var G = "jQuery" + J(),
       Ya = 0,
       za = {};
   c.extend({
           cache: {},
           expando: G,
           noData: {
               embed: true,
               object: true,
               applet: true
           },
           data: function (a, b, d) {
               if (!(a.nodeName && c.noData[a.nodeName.toLowerCase()])) {
                   a = a == A ? za : a;
                   var f = a[G],
                       e = c.cache;
                   if (!f && typeof b === "string" && d === w) return null;
                   f || (f = ++Ya);
                   if (typeof b === "object") {
                           a[G] = f;
                           e[f] = c.extend(true, {}, 
                       } else if (!e[f]) {
                           a[G] = f;
                           e[f] = {}
                       }
                   a = e[f];
                   if (d !== w) a[b] = d;
                   return typeof b === "string" ? a[b] : a
               }
           },
           removeData: function (a,  {
               if (!(a.nodeName && c.noData[a.nodeName.toLowerCase()])) {
                   a = a == A ? za : a;
                   var d = a[G],
                       f = c.cache,
                       e = f[d];
                   if ( {
                           if (e) {
                               delete e[b];
                               c.isEmptyObject(e) && c.removeData(a)
                           }
                       } else {
                           if (c.support.deleteExpando) delete a[c.expando];
                           else a.removeAttribute && a.removeAttribute(c.expando);
                           delete f[d]
                       }
               }
           }
       });
   c.fn.extend({
           data: function (a,  {
               if (typeof a === "undefined" && this.length) return c.data(this[0]);
               else if (typeof a === "object") return this.each(function () {
                   c.data(this, a)
               });
               var d = a.split(".");
               d[1] = d[1] ? "." + d[1] : "";
               if (b === w) {
                   var f = this.triggerHandler("getData" + d[1] + "!", [d[0]]);
                   if (f === w && this.length) f = c.data(this[0], a);
                   return f === w && d[1] ? this.data(d[0]) : f
               } else return this.trigger("setData" + d[1] + "!", [d[0], b]).each(function () {
                   c.data(this, a, 
               })
           },
           removeData: function (a) {
               return this.each(function () {
                   c.removeData(this, a)
               })
           }
       });
   c.extend({
           queue: function (a, b, d) {
               if (a) {
                   b = (b || "fx") + "queue";
                   var f = c.data(a, ;
                   if (!d) return f || [];
                   if (!f || c.isArray(d)) f = c.data(a, b, c.makeArray(d));
                   else f.push(d);
                   return f
               }
           },
           dequeue: function (a,  {
               b = b || "fx";
               var d = c.queue(a, ,
                   f = d.shift();
               if (f === "inprogress") f = d.shift();
               if (f) {
                       b === "fx" && d.unshift("inprogress");
                       f.call(a, function () {
                           c.dequeue(a, 
                       })
                   }
           }
       });
   c.fn.extend({
           queue: function (a,  {
               if (typeof a !== "string") {
                   b = a;
                   a = "fx"
               }
               if (b === w) return c.queue(this[0], a);
               return this.each(function () {
                   var d = c.queue(this, a, ;
                   a === "fx" && d[0] !== "inprogress" && c.dequeue(this, a)
               })
           },
           dequeue: function (a) {
               return this.each(function () {
                   c.dequeue(this, a)
               })
           },
           delay: function (a,  {
               a = c.fx ? c.fx.speeds[a] || a : a;
               b = b || "fx";
               return this.queue(b, function () {
                   var d = this;
                   setTimeout(function () {
                       c.dequeue(d, 
                   }, a)
               })
           },
           clearQueue: function (a) {
               return this.queue(a || "fx", [])
           }
       });
   var Aa = /[\n\t]/g,
       ca = /\s+/,
       Za = /\r/g,
       $a = /href|src|style/,
       ab = /(button|input)/i,
       bb = /(button|input|object|select|textarea)/i,
       cb = /^(a|area)$/i,
       Ba = /radio|checkbox/;
   c.fn.extend({
           attr: function (a,  {
               return X(this, a, b, true, c.attr)
           },
           removeAttr: function (a) {
               return this.each(function () {
                   c.attr(this, a, "");
                   this.nodeType === 1 && this.removeAttribute(a)
               })
           },
           addClass: function (a) {
               if (c.isFunction(a)) return this.each(function (n) {
                   var r = c(this);
                   r.addClass(a.call(this, n, r.attr("class")))
               });
               if (a && typeof a === "string") for (var b = (a || "").split(ca), d = 0, f = this.length; d < f; d++) {
                   var e = this[d];
                   if (e.nodeType === 1) if (e.className) {
                       for (var j = " " + e.className + " ", i = e.className, o = 0, k = b.length; o < k; o++) if (j.indexOf(" " + b[o] + " ") < 0) i += " " + b[o];
                       e.className = c.trim(i)
                   } else e.className = a
               }
               return this
           },
           removeClass: function (a) {
               if (c.isFunction(a)) return this.each(function (k) {
                   var n = c(this);
                   n.removeClass(a.call(this, k, n.attr("class")))
               });
               if (a && typeof a === "string" || a === w) for (var b = (a || "").split(ca), d = 0, f = this.length; d < f; d++) {
                   var e = this[d];
                   if (e.nodeType === 1 && e.className) if (a) {
                       for (var j = (" " + e.className + " ").replace(Aa, " "), i = 0, o = b.length; i < o; i++) j = j.replace(" " + b[i] + " ", " ");
                       e.className = c.trim(j)
                   } else e.className = ""
               }
               return this
           },
           toggleClass: function (a,  {
               var d = typeof a,
                   f = typeof b === "boolean";
               if (c.isFunction(a)) return this.each(function (e) {
                       var j = c(this);
                       j.toggleClass(a.call(this, e, j.attr("class"), , 
                   });
               return this.each(function () {
                       if (d === "string") for (var e, j = 0, i = c(this), o = b, k = a.split(ca); e = k[j++] {
                           o = f ? o : !i.hasClass(e);
                           i[o ? "addClass" : "removeClass"](e)
                       } else if (d === "undefined" || d === "boolean") {
                           this.className && c.data(this, "__className__", this.className);
                           this.className =
                           this.className || a === false ? "" : c.data(this, "__className__") || ""
                       }
                   })
           },
           hasClass: function (a) {
               a = " " + a + " ";
               for (var b = 0, d = this.length; b < d; b++) if ((" " + this[b].className + " ").replace(Aa, " ").indexOf(a) > -1) return true;
               return false
           },
           val: function (a) {
               if (a === w) {
                   var b = this[0];
                   if ( {
                       if (c.nodeName(b, "option")) return (b.attributes.value || {}).specified ? b.value : b.text;
                       if (c.nodeName(b, "select")) {
                           var d = b.selectedIndex,
                               f = [],
                               e = b.options;
                           b = b.type === "select-one";
                           if (d < 0) return null;
                           var j = b ? d : 0;
                           for (d = b ? d + 1 : e.length; j < d; j++) {
                                   var i =
                                   e[j];
                                   if (i.selected) {
                                       a = c(i).val();
                                       if ( return a;
                                       f.push(a)
                                   }
                               }
                           return f
                       }
                       if (Ba.test(b.type) && !c.support.checkOn) return b.getAttribute("value") === null ? "on" : b.value;
                       return (b.value || "").replace(Za, "")
                   }
                   return w
               }
               var o = c.isFunction(a);
               return this.each(function (k) {
                   var n = c(this),
                       r = a;
                   if (this.nodeType === 1) {
                           if (o) r = a.call(this, k, n.val());
                           if (typeof r === "number") r += "";
                           if (c.isArray(r) && Ba.test(this.type)) this.checked = c.inArray(n.val(), r) >= 0;
                           else if (c.nodeName(this, "select")) {
                               var u = c.makeArray(r);
                               c("option", this).each(function () {
                                   this.selected =
                                   c.inArray(c(this).val(), u) >= 0
                               });
                               if (!u.length) this.selectedIndex = -1
                           } else this.value = r
                       }
               })
           }
       });
   c.extend({
           attrFn: {
               val: true,
               css: true,
               html: true,
               text: true,
               data: true,
               width: true,
               height: true,
               offset: true
           },
           attr: function (a, b, d, f) {
               if (!a || a.nodeType === 3 || a.nodeType === 8) return w;
               if (f && b in c.attrFn) return c(a)[b](d);
               f = a.nodeType !== 1 || !c.isXMLDoc(a);
               var e = d !== w;
               b = f && c.props[b] || b;
               if (a.nodeType === 1) {
                   var j = $a.test(;
                   if (b in a && f && !j) {
                       if (e) {
                           b === "type" && ab.test(a.nodeName) && a.parentNode && c.error("type property can't be changed");
                           a[b] = d
                       }
                       if (c.nodeName(a, "form") && a.getAttributeNode() return a.getAttributeNode(.nodeValue;
                       if (b === "tabIndex") return (b = a.getAttributeNode("tabIndex")) && b.specified ? b.value : bb.test(a.nodeName) || cb.test(a.nodeName) && a.href ? 0 : w;
                       return a[b]
                   }
                   if (!c.support.style && f && b === "style") {
                       if (e) a.style.cssText = "" + d;
                       return a.style.cssText
                   }
                   e && a.setAttribute(b, "" + d);
                   a = !c.support.hrefNormalized && f && j ? a.getAttribute(b, 2) : a.getAttribute(;
                   return a === null ? w : a
               }
               return c.style(a, b, d)
           }
       });
   var O = /\.(.*)$/,
       db = function (a) {
           return a.replace(/[^\w\s\.\|`]/g, function ( {
               return "\\" + b
           })
       };
   c.event = {
           add: function (a, b, d, f) {
               if (!(a.nodeType === 3 || a.nodeType === 8)) {
                   if (a.setInterval && a !== A && !a.frameElement) a = A;
                   var e, j;
                   if (d.handler) {
                       e = d;
                       d = e.handler
                   }
                   if (!d.guid) d.guid = c.guid++;
                   if (j = c.data(a)) {
                       var i = j.events = j.events || {},
                           o = j.handle;
                       if (!o) j.handle = o = function () {
                               return typeof c !== "undefined" && !c.event.triggered ? c.event.handle.apply(o.elem, arguments) : w
                           };
                       o.elem = a;
                       b = b.split(" ");
                       for (var k, n = 0, r; k = b[n++] {
                               j = e ? c.extend({}, e) : {
                                   handler: d,
                                   data: f
                               };
                               if (k.indexOf(".") > -1) {
                                   r = k.split(".");
                                   k = r.shift();
                                   j.namespace = r.slice(0).sort().join(".")
                               } else {
                                   r = [];
                                   j.namespace = ""
                               }
                               j.type = k;
                               j.guid = d.guid;
                               var u = i[k],
                                   z = c.event.special[k] || {};
                               if (!u) {
                                       u = i[k] = [];
                                       if (!z.setup || z.setup.call(a, f, r, o) === false) if (a.addEventListener) a.addEventListener(k, o, false);
                                       else a.attachEvent && a.attachEvent("on" + k, o)
                                   }
                               if (z.add) {
                                       z.add.call(a, j);
                                       if (!j.handler.guid) j.handler.guid = d.guid
                                   }
                               u.push(j);
                               c.event.global[k] = true
                           }
                       a = null
                   }
               }
           },
           global: {},
           remove: function (a, b, d, f) {
               if (!(a.nodeType === 3 || a.nodeType === 8)) {
                   var e, j = 0,
                       i, o, k, n, r, u, z = c.data(a),
                       C = z && z.events;
                   if (z && C) {
                           if (b && b.type) {
                               d = b.handler;
                               b = b.type
                           }
                           if (!b || typeof b === "string" && b.charAt(0) === ".") {
                               b = b || "";
                               for (e in C) c.event.remove(a, e + 
                           } else {
                               for (b = b.split(" "); e = b[j++] {
                                   n = e;
                                   i = e.indexOf(".") < 0;
                                   o = [];
                                   if (!i) {
                                       o = e.split(".");
                                       e = o.shift();
                                       k = new RegExp("(^|\\.)" + c.map(o.slice(0).sort(), db).join("\\.(?:.*\\.)?") + "(\\.|$)")
                                   }
                                   if (r = C[e]) if (d) {
                                       n = c.event.special[e] || {};
                                       for (B = f || 0; B < r.length; B++) {
                                           u = r[b];
                                           if (d.guid === u.guid) {
                                               if (i || k.test(u.namespace)) {
                                                   f == null && r.splice(B--, 1);
                                                   n.remove && n.remove.call(a, u)
                                               }
                                               if (f != null) break
                                           }
                                       }
                                       if (r.length === 0 || f != null && r.length === 1) {
                                           if (!n.teardown || n.teardown.call(a, o) === false) Ca(a, e, z.handle);
                                           delete C[e]
                                       }
                                   } else for (var B = 0; B < r.length; B++) {
                                       u = r[b];
                                       if (i || k.test(u.namespace)) {
                                           c.event.remove(a, n, u.handler, ;
                                           r.splice(B--, 1)
                                       }
                                   }
                               }
                               if (c.isEmptyObject(C)) {
                                   if (b = z.handle) b.elem = null;
                                   delete z.events;
                                   delete z.handle;
                                   c.isEmptyObject(z) && c.removeData(a)
                               }
                           }
                       }
               }
           },
           trigger: function (a, b, d, f) {
               var e = a.type || a;
               if (!f) {
                   a = typeof a === "object" ? a[G] ? a : c.extend(c.Event(e), a) : c.Event(e);
                   if (e.indexOf("!") >= 0) {
                       a.type =
                       e = e.slice(0, -1);
                       a.exclusive = true
                   }
                   if (!d) {
                       a.stopPropagation();
                       c.event.global[e] && c.each(c.cache, function () {
                           this.events && this.events[e] && c.event.trigger(a, b, this.handle.elem)
                       })
                   }
                   if (!d || d.nodeType === 3 || d.nodeType === 8) return w;
                   a.result = w;
                   a.target = d;
                   b = c.makeArray(;
                   b.unshift(a)
               }
               a.currentTarget = d;
               (f = c.data(d, "handle")) && f.apply(d, ;
               f = d.parentNode || d.ownerDocument;
               try {
                   if (!(d && d.nodeName && c.noData[d.nodeName.toLowerCase()])) if (d["on" + e] && d["on" + e].apply(d,  === false) a.result = false
               } catch (j) {}
               if (!a.isPropagationStopped() && f) c.event.trigger(a, b, f, true);
               else if (!a.isDefaultPrevented()) {
                   f = a.target;
                   var i, o = c.nodeName(f, "a") && e === "click",
                       k = c.event.special[e] || {};
                   if ((!k._default || k._default.call(d, a) === false) && !o && !(f && f.nodeName && c.noData[f.nodeName.toLowerCase()])) {
                           try {
                               if (f[e]) {
                                   if (i = f["on" + e]) f["on" + e] = null;
                                   c.event.triggered = true;
                                   f[e]()
                               }
                           } catch (n) {}
                           if (i) f["on" + e] = i;
                           c.event.triggered = false
                       }
               }
           },
           handle: function (a) {
               var b, d, f, e;
               a = arguments[0] = c.event.fix(a || A.event);
               a.currentTarget = this;
               b = a.type.indexOf(".") < 0 && !a.exclusive;
               if (! {
                   d = a.type.split(".");
                   a.type = d.shift();
                   f = new RegExp("(^|\\.)" + d.slice(0).sort().join("\\.(?:.*\\.)?") + "(\\.|$)")
               }
               e = c.data(this, "events");
               d = e[a.type];
               if (e && d) {
                   d = d.slice(0);
                   e = 0;
                   for (var j = d.length; e < j; e++) {
                       var i = d[e];
                       if (b || f.test(i.namespace)) {
                           a.handler = i.handler;
                           a.data = i.data;
                           a.handleObj = i;
                           i = i.handler.apply(this, arguments);
                           if (i !== w) {
                               a.result = i;
                               if (i === false) {
                                   a.preventDefault();
                                   a.stopPropagation()
                               }
                           }
                           if (a.isImmediatePropagationStopped()) break
                       }
                   }
               }
               return a.result
           },
           props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
           fix: function (a) {
               if (a[G]) return a;
               var b = a;
               a = c.Event(;
               for (var d = this.props.length, f; d;) {
                   f = this.props[--d];
                   a[f] = b[f]
               }
               if (!a.target) a.target = a.srcElement || s;
               if (a.target.nodeType === 3) a.target = a.target.parentNode;
               if (!a.relatedTarget && a.fromElement) a.relatedTarget = a.fromElement === a.target ? a.toElement : a.fromElement;
               if (a.pageX == null && a.clientX != null) {
                   b = s.documentElement;
                   d = s.body;
                   a.pageX = a.clientX + (b && b.scrollLeft || d && d.scrollLeft || 0) - (b && b.clientLeft || d && d.clientLeft || 0);
                   a.pageY = a.clientY + (b && b.scrollTop || d && d.scrollTop || 0) - (b && b.clientTop || d && d.clientTop || 0)
               }
               if (!a.which && (a.charCode || a.charCode === 0 ? a.charCode : a.keyCode)) a.which = a.charCode || a.keyCode;
               if (!a.metaKey && a.ctrlKey) a.metaKey = a.ctrlKey;
               if (!a.which && a.button !== w) a.which = a.button & 1 ? 1 : a.button & 2 ? 3 : a.button & 4 ? 2 : 0;
               return a
           },
           guid: 1E8,
           proxy: c.proxy,
           special: {
               ready: {
                   setup: c.bindReady,
                   teardown: c.noop
               },
               live: {
                   add: function (a) {
                       c.event.add(this, a.origType, c.extend({}, a, {
                           handler: oa
                       }))
                   },
                   remove: function (a) {
                       var b = true,
                           d = a.origType.replace(O, "");
                       c.each(c.data(this, "events").live || [], function () {
                               if (d === this.origType.replace(O, "")) return b = false
                           });
                       b && c.event.remove(this, a.origType, oa)
                   }
               },
               beforeunload: {
                   setup: function (a, b, d) {
                       if (this.setInterval) this.onbeforeunload = d;
                       return false
                   },
                   teardown: function (a,  {
                       if (this.onbeforeunload ===  this.onbeforeunload = null
                   }
               }
           }
       };
   var Ca = s.removeEventListener ?
   function (a, b, d) {
           a.removeEventListener(b, d, false)
       } : function (a, b, d) {
           a.detachEvent("on" + b, d)
       };
   c.Event = function (a) {
           if (!this.preventDefault) return new c.Event(a);
           if (a && a.type) {
               this.originalEvent =
               a;
               this.type = a.type
           } else this.type = a;
           this.timeStamp = J();
           this[G] = true
       };
   c.Event.prototype = {
           preventDefault: function () {
               this.isDefaultPrevented = Z;
               var a = this.originalEvent;
               if (a) {
                   a.preventDefault && a.preventDefault();
                   a.returnValue = false
               }
           },
           stopPropagation: function () {
               this.isPropagationStopped = Z;
               var a = this.originalEvent;
               if (a) {
                   a.stopPropagation && a.stopPropagation();
                   a.cancelBubble = true
               }
           },
           stopImmediatePropagation: function () {
               this.isImmediatePropagationStopped = Z;
               this.stopPropagation()
           },
           isDefaultPrevented: Y,
           isPropagationStopped: Y,
           isImmediatePropagationStopped: Y
       };
   var Da = function (a) {
           var b = a.relatedTarget;
           try {
               for (; b && b !== this;) b = b.parentNode;
               if (b !== this) {
                   a.type = a.data;
                   c.event.handle.apply(this, arguments)
               }
           } catch (d) {}
       },
       Ea = function (a) {
           a.type = a.data;
           c.event.handle.apply(this, arguments)
       };
   c.each({
           mouseenter: "mouseover",
           mouseleave: "mouseout"
       }, function (a,  {
           c.event.special[a] = {
               setup: function (d) {
                   c.event.add(this, b, d && d.selector ? Ea : Da, a)
               },
               teardown: function (d) {
                   c.event.remove(this, b, d && d.selector ? Ea : Da)
               }
           }
       });
   if (!c.support.submitBubbles) c.event.special.submit = {
           setup: function () {
               if (this.nodeName.toLowerCase() !== "form") {
                   c.event.add(this, "click.specialSubmit", function (a) {
                       var b = a.target,
                           d = b.type;
                       if ((d === "submit" || d === "image") && c(.closest("form").length) return na("submit", this, arguments)
                   });
                   c.event.add(this, "keypress.specialSubmit", function (a) {
                       var b = a.target,
                           d = b.type;
                       if ((d === "text" || d === "password") && c(.closest("form").length && a.keyCode === 13) return na("submit", this, arguments)
                   })
               } else return false
           },
           teardown: function () {
               c.event.remove(this, ".specialSubmit")
           }
       };
   if (!c.support.changeBubbles) {
           var da = /textarea|input|select/i,
               ea, Fa = function (a) {
                   var b = a.type,
                       d = a.value;
                   if (b === "radio" || b === "checkbox") d = a.checked;
                   else if (b === "select-multiple") d = a.selectedIndex > -1 ? c.map(a.options, function (f) {
                           return f.selected
                       }).join("-") : "";
                   else if (a.nodeName.toLowerCase() === "select") d = a.selectedIndex;
                   return d
               },
               fa = function (a,  {
                   var d = a.target,
                       f, e;
                   if (!(!da.test(d.nodeName) || d.readOnly)) {
                           f = c.data(d, "_change_data");
                           e = Fa(d);
                           if (a.type !== "focusout" || d.type !== "radio") c.data(d, "_change_data", e);
                           if (!(f === w || e === f)) if (f != null || e) {
                               a.type = "change";
                               return c.event.trigger(a, b, d)
                           }
                       }
               };
           c.event.special.change = {
                   filters: {
                       focusout: fa,
                       click: function (a) {
                           var b = a.target,
                               d = b.type;
                           if (d === "radio" || d === "checkbox" || b.nodeName.toLowerCase() === "select") return fa.call(this, a)
                       },
                       keydown: function (a) {
                           var b = a.target,
                               d = b.type;
                           if (a.keyCode === 13 && b.nodeName.toLowerCase() !== "textarea" || a.keyCode === 32 && (d === "checkbox" || d === "radio") || d === "select-multiple") return fa.call(this, a)
                       },
                       beforeactivate: function (a) {
                           a = a.target;
                           c.data(a, "_change_data", Fa(a))
                       }
                   },
                   setup: function () {
                       if (this.type === "file") return false;
                       for (var a in ea) c.event.add(this, a + ".specialChange", ea[a]);
                       return da.test(this.nodeName)
                   },
                   teardown: function () {
                       c.event.remove(this, ".specialChange");
                       return da.test(this.nodeName)
                   }
               };
           ea = c.event.special.change.filters
       }
   s.addEventListener && c.each({
           focus: "focusin",
           blur: "focusout"
       }, function (a,  {
           function d(f) {
               f = c.event.fix(f);
               f.type = b;
               return c.event.handle.call(this, f)
           }
           c.event.special[b] = {
               setup: function () {
                   this.addEventListener(a, d, true)
               },
               teardown: function () {
                   this.removeEventListener(a, d, true)
               }
           }
       });
   c.each(["bind", "one"], function (a,  {
           c.fn[b] = function (d, f, e) {
               if (typeof d === "object") {
                   for (var j in d) this[b](j, f, d[j], e);
                   return this
               }
               if (c.isFunction(f)) {
                   e = f;
                   f = w
               }
               var i = b === "one" ? c.proxy(e, function (k) {
                   c(this).unbind(k, i);
                   return e.apply(this, arguments)
               }) : e;
               if (d === "unload" && b !== "one") this.one(d, f, e);
               else {
                   j = 0;
                   for (var o = this.length; j < o; j++) c.event.add(this[j], d, i, f)
               }
               return this
           }
       });
   c.fn.extend({
           unbind: function (a,  {
               if (typeof a === "object" && !a.preventDefault) for (var d in a) this.unbind(d, a[d]);
               else {
                   d = 0;
                   for (var f = this.length; d < f; d++) c.event.remove(this[d], a, 
               }
               return this
           },
           delegate: function (a, b, d, f) {
               return this.live(b, d, f, a)
           },
           undelegate: function (a, b, d) {
               return arguments.length === 0 ? this.unbind("live") : this.die(b, null, d, a)
           },
           trigger: function (a, B) {
               return this.each(function () {
                   c.event.trigger(a, b, this)
               })
           },
           triggerHandler: function (a, B) {
               if (this[0]) {
                   a = c.Event(a);
                   a.preventDefault();
                   a.stopPropagation();
                   c.event.trigger(a, b, this[0]);
                   return a.result
               }
           },
           toggle: function (a) {
               for (var b = arguments, d = 1; d < b.length;) c.proxy(a, b[d++]);
               return this.click(c.proxy(a, function (f) {
                   var e = (c.data(this, "lastToggle" + a.guid) || 0) % d;
                   c.data(this, "lastToggle" + a.guid, e + 1);
                   f.preventDefault();
                   return b[e].apply(this, arguments) || false
               }))
           },
           hover: function (a, B) {
               return this.mouseenter(a).mouseleave(b || a)
           }
       });
   var Ga = {
           focus: "focusin",
           blur: "focusout",
           mouseenter: "mouseover",
           mouseleave: "mouseout"
       };
   c.each(["live", "die"], function (a, B) {
           c.fn[b] = function (d, f, e, j) {
               var i, o = 0,
                   k, n, r = j || this.selector,
                   u = j ? this : c(this.context);
               if (c.isFunction(f)) {
                       e = f;
                       f = w
                   }
               for (d = (d || "").split(" ");
                   (i = d[o++]) != null;) {
                       j = O.exec(i);
                       k = "";
                       if (j) {
                           k = j[0];
                           i = i.replace(O, "")
                       }
                       if (i === "hover") d.push("mouseenter" + k, "mouseleave" + k);
                       else {
                           n = i;
                           if (i === "focus" || i === "blur") {
                               d.push(Ga[i] + k);
                               i += k
                           } else i = (Ga[i] || i) + k;
                           b === "live" ? u.each(function () {
                               c.event.add(this, pa(i, r), {
                                   data: f,
                                   selector: r,
                                   handler: e,
                                   origType: i,
                                   origHandler: e,
                                   preType: n
                               })
                           }) : u.unbind(pa(i, r), e)
                       }
                   }
               return this
           }
       });
   c.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".split(" "), function (a, B) {
           c.fn[b] = function (d) {
               return d ? this.bind(b, d) : this.trigger(B)
           };
           if (c.attrFn) c.attrFn[b] = true
       });
   A.attachEvent && !A.addEventListener && A.attachEvent("onunload", function () {
           for (var a in c.cache) if (c.cache[a].handle) try {
               c.event.remove(c.cache[a].handle.elem)
           } catch (B) {}
       });
       (function () {
           function a(g) {
               for (var h = "", l, m = 0; g[m]; m++) {
                   l = g[m];
                   if (l.nodeType === 3 || l.nodeType === 4) h += l.nodeValue;
                   else if (l.nodeType !== 8) h += a(l.childNodes)
               }
               return h
           }
           function b(g, h, l, m, q, p) {
               q = 0;
               for (var v = m.length; q < v; q++) {
                   var t = m[q];
                   if (t) {
                       t = t[g];
                       for (var y = false; t;) {
                           if (t.sizcache === l) {
                               y = m[t.sizset];
                               break
                           }
                           if (t.nodeType === 1 && !p) {
                               t.sizcache = l;
                               t.sizset = q
                           }
                           if (t.nodeName.toLowerCase() === h) {
                               y = t;
                               break
                           }
                           t = t[g]
                       }
                       m[q] = y
                   }
               }
           }
           function d(g, h, l, m, q, p) {
               q = 0;
               for (var v = m.length; q < v; q++) {
                   var t = m[q];
                   if (t) {
                       t = t[g];
                       for (var y = false; t;) {
                           if (t.sizcache === l) {
                               y = m[t.sizset];
                               break
                           }
                           if (t.nodeType === 1) {
                               if (!p) {
                                   t.sizcache = l;
                                   t.sizset = q
                               }
                               if (typeof h !== "string") {
                                   if (t === h) {
                                       y = true;
                                       break
                                   }
                               } else if (k.filter(h, [t]).length > 0) {
                                   y = t;
                                   break
                               }
                           }
                           t = t[g]
                       }
                       m[q] = y
                   }
               }
           }
           var f = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
               e = 0,
               j = Object.prototype.toString,
               i = false,
               o = true;
               [0, 0].sort(function () {
                   o = false;
                   return 0
               });
           var k = function (g, h, l, m) {
                   l = l || [];
                   var q = h = h || s;
                   if (h.nodeType !== 1 && h.nodeType !== 9) return [];
                   if (!g || typeof g !== "string") return l;
                   for (var p = [], v, t, y, S, H = true, M = x(h), I = g;
                   (f.exec(""), v = f.exec(I)) !== null;) {
                       I = v[3];
                       p.push(v[1]);
                       if (v[2]) {
                           S = v[3];
                           break
                       }
                   }
                   if (p.length > 1 && r.exec(g)) if (p.length === 2 && n.relative[p[0]]) t = ga(p[0] + p[1], h);
                   else for (t = n.relative[p[0]] ? [h] : k(p.shift(), h); p.length;) {
                       g = p.shift();
                       if (n.relative[g]) g += p.shift();
                       t = ga(g, t)
                   } else {
                       if (!m && p.length > 1 && h.nodeType === 9 && !M && n.match.ID.test(p[0]) && !n.match.ID.test(p[p.length - 1])) {
                           v = k.find(p.shift(), h, M);
                           h = v.expr ? k.filter(v.expr, v.set)[0] : v.set[0]
                       }
                       if (h) {
                           v = m ? {
                               expr: p.pop(),
                               set: z(m)
                           } : k.find(p.pop(), p.length === 1 && (p[0] === "~" || p[0] === "+") && h.parentNode ? h.parentNode : h, M);
                           t = v.expr ? k.filter(v.expr, v.set) : v.set;
                           if (p.length > 0) y = z(t);
                           else H = false;
                           for (; p.length;) {
                               var D = p.pop();
                               v = D;
                               if (n.relative[D]) v = p.pop();
                               else D = "";
                               if (v == null) v = h;
                               n.relative[D](y, v, M)
                           }
                       } else y = []
                   }
                   y || (y = t);
                   y || k.error(D || g);
                   if (j.call(y) === "[object Array]") if (H) if (h && h.nodeType === 1) for (g = 0; y[g] != null; g++) {
                       if (y[g] && (y[g] === true || y[g].nodeType === 1 && E(h, y[g]))) l.push(t[g])
                   } else for (g = 0; y[g] != null; g++) y[g] && y[g].nodeType === 1 && l.push(t[g]);
                   else l.push.apply(l, y);
                   else z(y, l);
                   if (S) {
                       k(S, q, l, m);
                       k.uniqueSort(l)
                   }
                   return l
               };
           k.uniqueSort = function (g) {
                   if (B) {
                       i = o;
                       g.sort(B);
                       if (i) for (var h = 1; h < g.length; h++) g[h] === g[h - 1] && g.splice(h--, 1)
                   }
                   return g
               };
           k.matches = function (g, h) {
                   return k(g, null, null, h)
               };
           k.find = function (g, h, l) {
                   var m, q;
                   if (!g) return [];
                   for (var p = 0, v = n.order.length; p < v; p++) {
                       var t = n.order[p];
                       if (q = n.leftMatch[t].exec(g)) {
                           var y = q[1];
                           q.splice(1, 1);
                           if (y.substr(y.length - 1) !== "\\") {
                               q[1] = (q[1] || "").replace(/\\/g, "");
                               m = n.find[t](q, h, l);
                               if (m != null) {
                                   g = g.replace(n.match[t], "");
                                   break
                               }
                           }
                       }
                   }
                   m || (m = h.getElementsByTagName("*"));
                   return {
                       set: m,
                       expr: g
                   }
               };
           k.filter = function (g, h, l, m) {
                   for (var q = g, p = [], v = h, t, y, S = h && h[0] && x(h[0]); g && h.length;) {
                       for (var H in n.filter) if ((t = n.leftMatch[H].exec(g)) != null && t[2]) {
                           var M = n.filter[H],
                               I, D;
                           D = t[1];
                           y = false;
                           t.splice(1, 1);
                           if (D.substr(D.length - 1) !== "\\") {
                                   if (v === p) p = [];
                                   if (n.preFilter[H]) if (t = n.preFilter[H](t, v, l, p, m, S)) {
                                       if (t === true) continue
                                   } else y = I = true;
                                   if (t) for (var U = 0;
                                   (D = v[u]) != null; U++) if (D) {
                                       I = M(D, t, U, v);
                                       var Ha = m ^ !! I;
                                       if (l && I != null) if (Ha) y = true;
                                       else v[u] = false;
                                       else if (Ha) {
                                           p.push(D);
                                           y = true
                                       }
                                   }
                                   if (I !== w) {
                                       l || (v = p);
                                       g = g.replace(n.match[H], "");
                                       if (!y) return [];
                                       break
                                   }
                               }
                       }
                       if (g === q) if (y == null) k.error(g);
                       else break;
                       q = g
                   }
                   return v
               };
           k.error = function (g) {
                   throw "Syntax error, unrecognized expression: " + g;
               };
           var n = k.selectors = {
                   order: ["ID", "NAME", "TAG"],
                   match: {
                       ID: /#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
                       CLASS: /\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
                       NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,
                       ATTR: /\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,
                       TAG: /^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,
                       CHILD: /:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,
                       POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,
                       PSEUDO: /:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/
                   },
                   leftMatch: {},
                   attrMap: {
                       "class": "className",
                       "for": "htmlFor"
                   },
                   attrHandle: {
                       href: function (g) {
                           return g.getAttribute("href")
                       }
                   },
                   relative: {
                       "+": function (g, h) {
                           var l = typeof h === "string",
                               m = l && !/\W/.test(h);
                           l = l && !m;
                           if (m) h = h.toLowerCase();
                           m = 0;
                           for (var q = g.length, p; m < q; m++) if (p = g[m]) {
                                   for (;
                                   (p = p.previousSibling) && p.nodeType !== 1;);
                                   g[m] = l || p && p.nodeName.toLowerCase() === h ? p || false : p === h
                               }
                           l && k.filter(h, g, true)
                       },
                       ">": function (g, h) {
                           var l = typeof h === "string";
                           if (l && !/\W/.test(h)) {
                               h = h.toLowerCase();
                               for (var m = 0, q = g.length; m < q; m++) {
                                   var p = g[m];
                                   if (p) {
                                       l = p.parentNode;
                                       g[m] = l.nodeName.toLowerCase() === h ? l : false
                                   }
                               }
                           } else {
                               m = 0;
                               for (q = g.length; m < q; m++) if (p = g[m]) g[m] = l ? p.parentNode : p.parentNode === h;
                               l && k.filter(h, g, true)
                           }
                       },
                       "": function (g, h, l) {
                           var m = e++,
                               q = d;
                           if (typeof h === "string" && !/\W/.test(h)) {
                                   var p = h = h.toLowerCase();
                                   q = b
                               }
                           q("parentNode", h, m, g, p, l)
                       },
                       "~": function (g, h, l) {
                           var m = e++,
                               q = d;
                           if (typeof h === "string" && !/\W/.test(h)) {
                                   var p = h = h.toLowerCase();
                                   q = b
                               }
                           q("previousSibling", h, m, g, p, l)
                       }
                   },
                   find: {
                       ID: function (g, h, l) {
                           if (typeof h.getElementById !== "undefined" && !l) return (g = h.getElementById(g[1])) ? [g] : []
                       },
                       NAME: function (g, h) {
                           if (typeof h.getElementsByName !== "undefined") {
                               var l = [];
                               h = h.getElementsByName(g[1]);
                               for (var m = 0, q = h.length; m < q; m++) h[m].getAttribute("name") === g[1] && l.push(h[m]);
                               return l.length === 0 ? null : l
                           }
                       },
                       TAG: function (g, h) {
                           return h.getElementsByTagName(g[1])
                       }
                   },
                   preFilter: {
                       CLASS: function (g, h, l, m, q, p) {
                           g = " " + g[1].replace(/\\/g, "") + " ";
                           if (p) return g;
                           p = 0;
                           for (var v;
                           (v = h[p]) != null; p++) if (v) if (q ^ (v.className && (" " + v.className + " ").replace(/[\t\n]/g, " ").indexOf(g) >= 0)) l || m.push(v);
                           else if (l) h[p] = false;
                           return false
                       },
                       ID: function (g) {
                           return g[1].replace(/\\/g, "")
                       },
                       TAG: function (g) {
                           return g[1].toLowerCase()
                       },
                       CHILD: function (g) {
                           if (g[1] === "nth") {
                               var h = /(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2] === "even" && "2n" || g[2] === "odd" && "2n+1" || !/\D/.test(g[2]) && "0n+" + g[2] || g[2]);
                               g[2] = h[1] + (h[2] || 1) - 0;
                               g[3] = h[3] - 0
                           }
                           g[0] = e++;
                           return g
                       },
                       ATTR: function (g, h, l, m, q, p) {
                           h = g[1].replace(/\\/g, "");
                           if (!p && n.attrMap[h]) g[1] = n.attrMap[h];
                           if (g[2] === "~=") g[4] = " " + g[4] + " ";
                           return g
                       },
                       PSEUDO: function (g, h, l, m, q) {
                           if (g[1] === "not") if ((f.exec(g[3]) || "").length > 1 || /^\w/.test(g[3])) g[3] = k(g[3], null, null, h);
                           else {
                               g = k.filter(g[3], h, l, true ^ q);
                               l || m.push.apply(m, g);
                               return false
                           } else if (n.match.POS.test(g[0]) || n.match.CHILD.test(g[0])) return true;
                           return g
                       },
                       POS: function (g) {
                           g.unshift(true);
                           return g
                       }
                   },
                   filters: {
                       enabled: function (g) {
                           return g.disabled === false && g.type !== "hidden"
                       },
                       disabled: function (g) {
                           return g.disabled === true
                       },
                       checked: function (g) {
                           return g.checked === true
                       },
                       selected: function (g) {
                           return g.selected === true
                       },
                       parent: function (g) {
                           return !!g.firstChild
                       },
                       empty: function (g) {
                           return !g.firstChild
                       },
                       has: function (g, h, l) {
                           return !!k(l[3], g).length
                       },
                       header: function (g) {
                           return /h\d/i.test(g.nodeName)
                       },
                       text: function (g) {
                           return "text" === g.type
                       },
                       radio: function (g) {
                           return "radio" === g.type
                       },
                       checkbox: function (g) {
                           return "checkbox" === g.type
                       },
                       file: function (g) {
                           return "file" === g.type
                       },
                       password: function (g) {
                           return "password" === g.type
                       },
                       submit: function (g) {
                           return "submit" === g.type
                       },
                       image: function (g) {
                           return "image" === g.type
                       },
                       reset: function (g) {
                           return "reset" === g.type
                       },
                       button: function (g) {
                           return "button" === g.type || g.nodeName.toLowerCase() === "button"
                       },
                       input: function (g) {
                           return /input|select|textarea|button/i.test(g.nodeName)
                       }
                   },
                   setFilters: {
                       first: function (g, h) {
                           return h === 0
                       },
                       last: function (g, h, l, m) {
                           return h === m.length - 1
                       },
                       even: function (g, h) {
                           return h % 2 === 0
                       },
                       odd: function (g, h) {
                           return h % 2 === 1
                       },
                       lt: function (g, h, l) {
                           return h < l[3] - 0
                       },
                       gt: function (g, h, l) {
                           return h > l[3] - 0
                       },
                       nth: function (g, h, l) {
                           return l[3] - 0 === h
                       },
                       eq: function (g, h, l) {
                           return l[3] - 0 === h
                       }
                   },
                   filter: {
                       PSEUDO: function (g, h, l, m) {
                           var q = h[1],
                               p = n.filters[q];
                           if (p) return p(g, l, h, m);
                           else if (q === "contains") return (g.textContent || g.innerText || a([g]) || "").indexOf(h[3]) >= 0;
                           else if (q === "not") {
                                   h =
                                   h[3];
                                   l = 0;
                                   for (m = h.length; l < m; l++) if (h[l] === g) return false;
                                   return true
                               } else k.error("Syntax error, unrecognized expression: " + q)
                       },
                       CHILD: function (g, h) {
                           var l = h[1],
                               m = g;
                           switch (l) {
                               case "only":
                               case "first":
                                   for (; m = m.previousSibling;) if (m.nodeType === 1) return false;
                                   if (l === "first") return true;
                                   m = g;
                               case "last":
                                   for (; m = m.nextSibling;) if (m.nodeType === 1) return false;
                                   return true;
                               case "nth":
                                   l = h[2];
                                   var q = h[3];
                                   if (l === 1 && q === 0) return true;
                                   h = h[0];
                                   var p = g.parentNode;
                                   if (p && (p.sizcache !== h || !g.nodeIndex)) {
                                       var v = 0;
                                       for (m = p.firstChild; m; m =
                                       m.nextSibling) if (m.nodeType === 1) m.nodeIndex = ++v;
                                       p.sizcache = h
                                   }
                                   g = g.nodeIndex - q;
                                   return l === 0 ? g === 0 : g % l === 0 && g / l >= 0
                               }
                       },
                       ID: function (g, h) {
                           return g.nodeType === 1 && g.getAttribute("id") === h
                       },
                       TAG: function (g, h) {
                           return h === "*" && g.nodeType === 1 || g.nodeName.toLowerCase() === h
                       },
                       CLASS: function (g, h) {
                           return (" " + (g.className || g.getAttribute("class")) + " ").indexOf(h) > -1
                       },
                       ATTR: function (g, h) {
                           var l = h[1];
                           g = n.attrHandle[l] ? n.attrHandle[l](g) : g[l] != null ? g[l] : g.getAttribute(l);
                           l = g + "";
                           var m = h[2];
                           h = h[4];
                           return g == null ? m === "!=" : m === "=" ? l === h : m === "*=" ? l.indexOf(h) >= 0 : m === "~=" ? (" " + l + " ").indexOf(h) >= 0 : !h ? l && g !== false : m === "!=" ? l !== h : m === "^=" ? l.indexOf(h) === 0 : m === "$=" ? l.substr(l.length - h.length) === h : m === "|=" ? l === h || l.substr(0, h.length + 1) === h + "-" : false
                       },
                       POS: function (g, h, l, m) {
                           var q = n.setFilters[h[2]];
                           if (q) return q(g, l, h, m)
                       }
                   }
               },
               r = n.match.POS;
           for (var u in n.match) {
                   n.match[u] = new RegExp(n.match[u].source + /(?![^\[]*\])(?![^\(]*\))/.source);
                   n.leftMatch[u] = new RegExp(/(^(?:.|\r|\n)*?)/.source + n.match[u].source.replace(/\\(\d+)/g, function (g, h) {
                       return "\\" + (h - 0 + 1)
                   }))
               }
           var z = function (g, h) {
                   g = Array.prototype.slice.call(g, 0);
                   if (h) {
                       h.push.apply(h, g);
                       return h
                   }
                   return g
               };
           try {
                   Array.prototype.slice.call(s.documentElement.childNodes, 0)
               } catch (C) {
                   z = function (g, h) {
                       h = h || [];
                       if (j.call(g) === "[object Array]") Array.prototype.push.apply(h, g);
                       else if (typeof g.length === "number") for (var l = 0, m = g.length; l < m; l++) h.push(g[l]);
                       else for (l = 0; g[l]; l++) h.push(g[l]);
                       return h
                   }
               }
           var B;
           if (s.documentElement.compareDocumentPosition) B = function (g, h) {
                   if (!g.compareDocumentPosition || !h.compareDocumentPosition) {
                       if (g == h) i = true;
                       return g.compareDocumentPosition ? -1 : 1
                   }
                   g = g.compareDocumentPosition(h) & 4 ? -1 : g === h ? 0 : 1;
                   if (g === 0) i = true;
                   return g
               };
           else if ("sourceIndex" in s.documentElement) B = function (g, h) {
                   if (!g.sourceIndex || !h.sourceIndex) {
                       if (g == h) i = true;
                       return g.sourceIndex ? -1 : 1
                   }
                   g = g.sourceIndex - h.sourceIndex;
                   if (g === 0) i = true;
                   return g
               };
           else if (s.createRange) B = function (g, h) {
                   if (!g.ownerDocument || !h.ownerDocument) {
                       if (g == h) i = true;
                       return g.ownerDocument ? -1 : 1
                   }
                   var l = g.ownerDocument.createRange(),
                       m =
                   h.ownerDocument.createRange();
                   l.setStart(g, 0);
                   l.setEnd(g, 0);
                   m.setStart(h, 0);
                   m.setEnd(h, 0);
                   g = l.compareBoundaryPoints(Range.START_TO_END, m);
                   if (g === 0) i = true;
                   return g
               };
               (function () {
                   var g = s.createElement("div"),
                       h = "script" + (new Date).getTime();
                   g.innerHTML = "<a name='" + h + "'/>";
                   var l = s.documentElement;
                   l.insertBefore(g, l.firstChild);
                   if (s.getElementById(h)) {
                           n.find.ID = function (m, q, p) {
                               if (typeof q.getElementById !== "undefined" && !p) return (q = q.getElementById(m[1])) ? q.id === m[1] || typeof q.getAttributeNode !== "undefined" && q.getAttributeNode("id").nodeValue === m[1] ? [q] : w : []
                           };
                           n.filter.ID = function (m, q) {
                               var p = typeof m.getAttributeNode !== "undefined" && m.getAttributeNode("id");
                               return m.nodeType === 1 && p && p.nodeValue === q
                           }
                       }
                   l.removeChild(g);
                   l = g = null
               })();
               (function () {
                   var g = s.createElement("div");
                   g.appendChild(s.createComment(""));
                   if (g.getElementsByTagName("*").length > 0) n.find.TAG = function (h, l) {
                       l = l.getElementsByTagName(h[1]);
                       if (h[1] === "*") {
                           h = [];
                           for (var m = 0; l[m]; m++) l[m].nodeType === 1 && h.push(l[m]);
                           l = h
                       }
                       return l
                   };
                   g.innerHTML = "<a href='#'></a>";
                   if (g.firstChild && typeof g.firstChild.getAttribute !== "undefined" && g.firstChild.getAttribute("href") !== "#") n.attrHandle.href = function (h) {
                       return h.getAttribute("href", 2)
                   };
                   g = null
               })();
           s.querySelectorAll &&
           function () {
                   var g = k,
                       h = s.createElement("div");
                   h.innerHTML = "<p class='TEST'></p>";
                   if (!(h.querySelectorAll && h.querySelectorAll(".TEST").length === 0)) {
                           k = function (m, q, p, v) {
                               q = q || s;
                               if (!v && q.nodeType === 9 && !x(q)) try {
                                   return z(q.querySelectorAll(m), p)
                               } catch (t) {}
                               return g(m, q, p, v)
                           };
                           for (var l in g) k[l] = g[l];
                           h = null
                       }
               }();
               (function () {
                   var g = s.createElement("div");
                   g.innerHTML = "<div class='test e'></div><div class='test'></div>";
                   if (!(!g.getElementsByClassName || g.getElementsByClassName("e").length === 0)) {
                       g.lastChild.className = "e";
                       if (g.getElementsByClassName("e").length !== 1) {
                           n.order.splice(1, 0, "CLASS");
                           n.find.CLASS = function (h, l, m) {
                               if (typeof l.getElementsByClassName !== "undefined" && !m) return l.getElementsByClassName(h[1])
                           };
                           g = null
                       }
                   }
               })();
           var E = s.compareDocumentPosition ?
           function (g, h) {
                   return !!(g.compareDocumentPosition(h) & 16)
               } : function (g, h) {
                   return g !== h && (g.contains ? g.contains(h) : true)
               },
               x = function (g) {
                   return (g = (g ? g.ownerDocument || g : 0).documentElement) ? g.nodeName !== "HTML" : false
               },
               ga = function (g, h) {
                   var l = [],
                       m = "",
                       q;
                   for (h = h.nodeType ? [h] : h; q = n.match.PSEUDO.exec(g);) {
                           m += q[0];
                           g = g.replace(n.match.PSEUDO, "")
                       }
                   g = n.relative[g] ? g + "*" : g;
                   q = 0;
                   for (var p = h.length; q < p; q++) k(g, h[q], l);
                   return k.filter(m, l)
               };
           c.find = k;
           c.expr = k.selectors;
           c.expr[":"] = c.expr.filters;
           c.unique = k.uniqueSort;
           c.text = a;
           c.isXMLDoc = x;
           c.contains = E
       })();
   var eb = /Until$/,
       fb = /^(?:parents|prevUntil|prevAll)/,
       gb = /,/;
   R = Array.prototype.slice;
   var Ia = function (a, b, d) {
           if (c.isFunction(B)) return c.grep(a, function (e, j) {
               return !!b.call(e, j, e) === d
           });
           else if (b.nodeType) return c.grep(a, function (e) {
               return e === b === d
           });
           else if (typeof b === "string") {
               var f = c.grep(a, function (e) {
                   return e.nodeType === 1
               });
               if (Ua.test(B)) return c.filter(b, f, !d);
               else b = c.filter(b, f)
           }
           return c.grep(a, function (e) {
               return c.inArray(e, B) >= 0 === d
           })
       };
   c.fn.extend({
           find: function (a) {
               for (var b = this.pushStack("", "find", a), d = 0, f = 0, e = this.length; f < e; f++) {
                   d = b.length;
                   c.find(a, this[f], B);
                   if (f > 0) for (var j = d; j < b.length; j++) for (var i = 0; i < d; i++) if (b[i] === b[j]) {
                       b.splice(j--, 1);
                       break
                   }
               }
               return b
           },
           has: function (a) {
               var b = c(a);
               return this.filter(function () {
                   for (var d = 0, f = b.length; d < f; d++) if (c.contains(this, b[d])) return true
               })
           },
           not: function (a) {
               return this.pushStack(Ia(this, a, false), "not", a)
           },
           filter: function (a) {
               return this.pushStack(Ia(this, a, true), "filter", a)
           },
           is: function (a) {
               return !!a && c.filter(a, this).length > 0
           },
           closest: function (a, B) {
               if (c.isArray(a)) {
                   var d = [],
                       f = this[0],
                       e, j = {},
                       i;
                   if (f && a.length) {
                           e = 0;
                           for (var o = a.length; e < o; e++) {
                               i = a[e];
                               j[i] || (j[i] = c.expr.match.POS.test(i) ? c(i, b || this.context) : i)
                           }
                           for (; f && f.ownerDocument && f !== b;) {
                               for (i in j) {
                                   e = j[i];
                                   if (e.jquery ? e.index(f) > -1 : c(f).is(e)) {
                                       d.push({
                                           selector: i,
                                           elem: f
                                       });
                                       delete j[i]
                                   }
                               }
                               f = f.parentNode
                           }
                       }
                   return d
               }
               var k = c.expr.match.POS.test(a) ? c(a, b || this.context) : null;
               return this.map(function (n, r) {
                   for (; r && r.ownerDocument && r !== b;) {
                       if (k ? k.index(r) > -1 : c(r).is(a)) return r;
                       r = r.parentNode
                   }
                   return null
               })
           },
           index: function (a) {
               if (!a || typeof a === "string") return c.inArray(this[0], a ? c(a) : this.parent().children());
               return c.inArray(a.jquery ? a[0] : a, this)
           },
           add: function (a, B) {
               a = typeof a === "string" ? c(a, b || this.context) : c.makeArray(a);
               b = c.merge(this.get(), a);
               return this.pushStack(qa(a[0]) || qa(b[0]) ? b : c.unique(B))
           },
           andSelf: function () {
               return this.add(this.prevObject)
           }
       });
   c.each({
           parent: function (a) {
               return (a = a.parentNode) && a.nodeType !== 11 ? a : null
           },
           parents: function (a) {
               return c.dir(a, "parentNode")
           },
           parentsUntil: function (a, b, d) {
               return c.dir(a, "parentNode", d)
           },
           next: function (a) {
               return c.nth(a, 2, "nextSibling")
           },
           prev: function (a) {
               return c.nth(a, 2, "previousSibling")
           },
           nextAll: function (a) {
               return c.dir(a, "nextSibling")
           },
           prevAll: function (a) {
               return c.dir(a, "previousSibling")
           },
           nextUntil: function (a, b, d) {
               return c.dir(a, "nextSibling", d)
           },
           prevUntil: function (a, b, d) {
               return c.dir(a, "previousSibling", d)
           },
           siblings: function (a) {
               return c.sibling(a.parentNode.firstChild, a)
           },
           children: function (a) {
               return c.sibling(a.firstChild)
           },
           contents: function (a) {
               return c.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document : c.makeArray(a.childNodes)
           }
       }, function (a, B) {
           c.fn[a] = function (d, f) {
               var e = c.map(this, b, d);
               eb.test(a) || (f = d);
               if (f && typeof f === "string") e = c.filter(f, e);
               e = this.length > 1 ? c.unique(e) : e;
               if ((this.length > 1 || gb.test(f)) && fb.test(a)) e = e.reverse();
               return this.pushStack(e, a, R.call(arguments).join(","))
           }
       });
   c.extend({
           filter: function (a, b, d) {
               if (d) a = ":not(" + a + ")";
               return c.find.matches(a, B)
           },
           dir: function (a, b, d) {
               var f = [];
               for (a = a[b]; a && a.nodeType !== 9 && (d === w || a.nodeType !== 1 || !c(a).is(d));) {
                   a.nodeType === 1 && f.push(a);
                   a = a[b]
               }
               return f
           },
           nth: function (a, b, d) {
               b = b || 1;
               for (var f = 0; a; a = a[d]) if (a.nodeType === 1 && ++f === B) break;
               return a
           },
           sibling: function (a, B) {
               for (var d = []; a; a = a.nextSibling) a.nodeType === 1 && a !== b && d.push(a);
               return d
           }
       });
   var Ja = / jQuery\d+="(?:\d+|null)"/g,
       V = /^\s+/,
       Ka = /(<([\w:]+)[^>]*?)\/>/g,
       hb = /^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,
       La = /<([\w:]+)/,
       ib = /<tbody/i,
       jb = /<|?\w+;/,
       ta = /<script|<object|<embed|<option|<style/i,
       ua = /checked\s*(?:[^=]|=\s*.checked.)/i,
       Ma = function (a, b, d) {
           return hb.test(d) ? a : b + "></" + d + ">"
       },
       F = {
           option: [1, "<select multiple='multiple'>", "</select>"],
           legend: [1, "<fieldset>", "</fieldset>"],
           thead: [1, "<table>", "</table>"],
           tr: [2, "<table><tbody>", "</tbody></table>"],
           td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
           col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
           area: [1, "<map>", "</map>"],
           _default: [0, "", ""]
       };
   F.optgroup = F.option;
   F.tbody = F.tfoot = F.colgroup = F.caption = F.thead;
   F.th = F.td;
   if (!c.support.htmlSerialize) F._default = [1, "div<div>", "</div>"];
   c.fn.extend({
           text: function (a) {
               if (c.isFunction(a)) return this.each(function (B) {
                   var d =
                   c(this);
                   d.text(a.call(this, b, d.text()))
               });
               if (typeof a !== "object" && a !== w) return this.empty().append((this[0] && this[0].ownerDocument || s).createTextNode(a));
               return c.text(this)
           },
           wrapAll: function (a) {
               if (c.isFunction(a)) return this.each(function (d) {
                   c(this).wrapAll(a.call(this, d))
               });
               if (this[0]) {
                   var b = c(a, this[0].ownerDocument).eq(0).clone(true);
                   this[0].parentNode && b.insertBefore(this[0]);
                   b.map(function () {
                       for (var d = this; d.firstChild && d.firstChild.nodeType === 1;) d = d.firstChild;
                       return d
                   }).append(this)
               }
               return this
           },
           wrapInner: function (a) {
               if (c.isFunction(a)) return this.each(function (B) {
                   c(this).wrapInner(a.call(this, B))
               });
               return this.each(function () {
                   var b = c(this),
                       d = b.contents();
                   d.length ? d.wrapAll(a) : b.append(a)
               })
           },
           wrap: function (a) {
               return this.each(function () {
                   c(this).wrapAll(a)
               })
           },
           unwrap: function () {
               return this.parent().each(function () {
                   c.nodeName(this, "body") || c(this).replaceWith(this.childNodes)
               }).end()
           },
           append: function () {
               return this.domManip(arguments, true, function (a) {
                   this.nodeType === 1 && this.appendChild(a)
               })
           },
           prepend: function () {
               return this.domManip(arguments, true, function (a) {
                   this.nodeType === 1 && this.insertBefore(a, this.firstChild)
               })
           },
           before: function () {
               if (this[0] && this[0].parentNode) return this.domManip(arguments, false, function (B) {
                   this.parentNode.insertBefore(b, this)
               });
               else if (arguments.length) {
                   var a = c(arguments[0]);
                   a.push.apply(a, this.toArray());
                   return this.pushStack(a, "before", arguments)
               }
           },
           after: function () {
               if (this[0] && this[0].parentNode) return this.domManip(arguments, false, function (B) {
                   this.parentNode.insertBefore(b, this.nextSibling)
               });
               else if (arguments.length) {
                   var a = this.pushStack(this, "after", arguments);
                   a.push.apply(a, c(arguments[0]).toArray());
                   return a
               }
           },
           remove: function (a, B) {
               for (var d = 0, f;
               (f = this[d]) != null; d++) if (!a || c.filter(a, [f]).length) {
                   if (!b && f.nodeType === 1) {
                       c.cleanData(f.getElementsByTagName("*"));
                       c.cleanData([f])
                   }
                   f.parentNode && f.parentNode.removeChild(f)
               }
               return this
           },
           empty: function () {
               for (var a = 0, b;
               (b = this[a]) != null; a++) for (b.nodeType === 1 && c.cleanData(b.getElementsByTagName("*")); b.firstChild;) b.removeChild(b.firstChild);
               return this
           },
           clone: function (a) {
               var b = this.map(function () {
                   if (!c.support.noCloneEvent && !c.isXMLDoc(this)) {
                       var d = this.outerHTML,
                           f = this.ownerDocument;
                       if (!d) {
                               d = f.createElement("div");
                               d.appendChild(this.cloneNode(true));
                               d = d.innerHTML
                           }
                       return c.clean([d.replace(Ja, "").replace(/=([^="'>\s]+\/)>/g, '="$1">').replace(V, "")], f)[0]
                   } else return this.cloneNode(true)
               });
               if (a === true) {
                   ra(this, B);
                   ra(this.find("*"), b.find("*"))
               }
               return b
           },
           html: function (a) {
               if (a === w) return this[0] && this[0].nodeType === 1 ? this[0].innerHTML.replace(Ja, "") : null;
               else if (typeof a === "string" && !ta.test(a) && (c.support.leadingWhitespace || !V.test(a)) && !F[(La.exec(a) || ["", ""])[1].toLowerCase()]) {
                   a = a.replace(Ka, Ma);
                   try {
                       for (var b = 0, d = this.length; b < d; b++) if (this[b].nodeType === 1) {
                           c.cleanData(this[b].getElementsByTagName("*"));
                           this[b].innerHTML = a
                       }
                   } catch (f) {
                       this.empty().append(a)
                   }
               } else c.isFunction(a) ? this.each(function (e) {
                   var j = c(this),
                       i = j.html();
                   j.empty().append(function () {
                           return a.call(this, e, i)
                       })
               }) : this.empty().append(a);
               return this
           },
           replaceWith: function (a) {
               if (this[0] && this[0].parentNode) {
                   if (c.isFunction(a)) return this.each(function (B) {
                       var d = c(this),
                           f = d.html();
                       d.replaceWith(a.call(this, b, f))
                   });
                   if (typeof a !== "string") a = c(a).detach();
                   return this.each(function () {
                       var b = this.nextSibling,
                           d = this.parentNode;
                       c(this).remove();
                       b ? c(B).before(a) : c(d).append(a)
                   })
               } else return this.pushStack(c(c.isFunction(a) ? a() : a), "replaceWith", a)
           },
           detach: function (a) {
               return this.remove(a, true)
           },
           domManip: function (a, b, d) {
               function f(u) {
                   return c.nodeName(u, "table") ? u.getElementsByTagName("tbody")[0] || u.appendChild(u.ownerDocument.createElement("tbody")) : u
               }
               var e, j, i = a[0],
                   o = [],
                   k;
               if (!c.support.checkClone && arguments.length === 3 && typeof i === "string" && ua.test(i)) return this.each(function () {
                       c(this).domManip(a, b, d, true)
                   });
               if (c.isFunction(i)) return this.each(function (u) {
                       var z = c(this);
                       a[0] = i.call(this, u, b ? z.html() : w);
                       z.domManip(a, b, d)
                   });
               if (this[0]) {
                       e = i && i.parentNode;
                       e = c.support.parentNode && e && e.nodeType === 11 && e.childNodes.length === this.length ? {
                           fragment: e
                       } : sa(a, this, o);
                       k = e.fragment;
                       if (j = k.childNodes.length === 1 ? (k = k.firstChild) : k.firstChild) {
                           b = b && c.nodeName(j, "tr");
                           for (var n = 0, r = this.length; n < r; n++) d.call(b ? f(this[n], j) : this[n], n > 0 || e.cacheable || this.length > 1 ? k.cloneNode(true) : k)
                       }
                       o.length && c.each(o, Qa)
                   }
               return this
           }
       });
   c.fragments = {};
   c.each({
           appendTo: "append",
           prependTo: "prepend",
           insertBefore: "before",
           insertAfter: "after",
           replaceAll: "replaceWith"
       }, function (a, B) {
           c.fn[a] = function (d) {
               var f = [];
               d = c(d);
               var e = this.length === 1 && this[0].parentNode;
               if (e && e.nodeType === 11 && e.childNodes.length === 1 && d.length === 1) {
                   d[b](this[0]);
                   return this
               } else {
                   e = 0;
                   for (var j = d.length; e < j; e++) {
                       var i = (e > 0 ? this.clone(true) : this).get();
                       c.fn[b].apply(c(d[e]), i);
                       f = f.concat(i)
                   }
                   return this.pushStack(f, a, d.selector)
               }
           }
       });
   c.extend({
           clean: function (a, b, d, f) {
               b = b || s;
               if (typeof b.createElement === "undefined") b = b.ownerDocument || b[0] && b[0].ownerDocument || s;
               for (var e = [], j = 0, i;
               (i = a[j]) != null; j++) {
                   if (typeof i === "number") i += "";
                   if (i) {
                       if (typeof i === "string" && !jb.test(i)) i = b.createTextNode(i);
                       else if (typeof i === "string") {
                           i = i.replace(Ka, Ma);
                           var o = (La.exec(i) || ["", ""])[1].toLowerCase(),
                               k = F[o] || F._default,
                               n = k[0],
                               r = b.createElement("div");
                           for (r.innerHTML = k[1] + i + k[2]; n--;) r = r.lastChild;
                           if (!c.support.tbody) {
                                   n = ib.test(i);
                                   o = o === "table" && !n ? r.firstChild && r.firstChild.childNodes : k[1] === "<table>" && !n ? r.childNodes : [];
                                   for (k = o.length - 1; k >= 0; --k) c.nodeName(o[k], "tbody") && !o[k].childNodes.length && o[k].parentNode.removeChild(o[k])
                               }!c.support.leadingWhitespace && V.test(i) && r.insertBefore(b.createTextNode(V.exec(i)[0]), r.firstChild);
                           i = r.childNodes
                       }
                       if (i.nodeType) e.push(i);
                       else e = c.merge(e, i)
                   }
               }
               if (d) for (j = 0; e[j]; j++) if (f && c.nodeName(e[j], "script") && (!e[j].type || e[j].type.toLowerCase() === "text/javascript")) f.push(e[j].parentNode ? e[j].parentNode.removeChild(e[j]) : e[j]);
               else {
                   e[j].nodeType === 1 && e.splice.apply(e, [j + 1, 0].concat(c.makeArray(e[j].getElementsByTagName("script"))));
                   d.appendChild(e[j])
               }
               return e
           },
           cleanData: function (a) {
               for (var b, d, f = c.cache, e = c.event.special, j = c.support.deleteExpando, i = 0, o;
               (o = a[i]) != null; i++) if (d = o[c.expando]) {
                   b = f[d];
                   if (b.events) for (var k in b.events) e[k] ? c.event.remove(o, k) : Ca(o, k, b.handle);
                   if (j) delete o[c.expando];
                   else o.removeAttribute && o.removeAttribute(c.expando);
                   delete f[d]
               }
           }
       });
   var kb = /z-?index|font-?weight|opacity|zoom|line-?height/i,
       Na = /alpha\([^)]*\)/,
       Oa = /opacity=([^)]*)/,
       ha = /float/i,
       ia = /-([a-z])/ig,
       lb = /([A-Z])/g,
       mb = /^-?\d+(?:px)?$/i,
       nb = /^-?\d/,
       ob = {
           position: "absolute",
           visibility: "hidden",
           display: "block"
       },
       pb = ["Left", "Right"],
       qb = ["Top", "Bottom"],
       rb = s.defaultView && s.defaultView.getComputedStyle,
       Pa = c.support.cssFloat ? "cssFloat" : "styleFloat",
       ja =

   function (a, B) {
           return b.toUpperCase()
       };
   c.fn.css = function (a, B) {
           return X(this, a, b, true, function (d, f, e) {
               if (e === w) return c.curCSS(d, f);
               if (typeof e === "number" && !kb.test(f)) e += "px";
               c.style(d, f, e)
           })
       };
   c.extend({
           style: function (a, b, d) {
               if (!a || a.nodeType === 3 || a.nodeType === 8) return w;
               if ((b === "width" || b === "height") && parseFloat(d) < 0) d = w;
               var f = a.style || a,
                   e = d !== w;
               if (!c.support.opacity && b === "opacity") {
                       if (e) {
                           f.zoom = 1;
                           b = parseInt(d, 10) + "" === "NaN" ? "" : "alpha(opacity=" + d * 100 + ")";
                           a = f.filter || c.curCSS(a, "filter") || "";
                           f.filter =
                           Na.test(a) ? a.replace(Na, B) : b
                       }
                       return f.filter && f.filter.indexOf("opacity=") >= 0 ? parseFloat(Oa.exec(f.filter)[1]) / 100 + "" : ""
                   }
               if (ha.test(B)) b = Pa;
               b = b.replace(ia, ja);
               if (e) f[b] = d;
               return f[b]
           },
           css: function (a, b, d, f) {
               if (b === "width" || b === "height") {
                   var e, j = b === "width" ? pb : qb;

                   function i() {
                       e = b === "width" ? a.offsetWidth : a.offsetHeight;
                       f !== "border" && c.each(j, function () {
                           f || (e -= parseFloat(c.curCSS(a, "padding" + this, true)) || 0);
                           if (f === "margin") e += parseFloat(c.curCSS(a, "margin" + this, true)) || 0;
                           else e -= parseFloat(c.curCSS(a, "border" + this + "Width", true)) || 0
                       })
                   }
                   a.offsetWidth !== 0 ? i() : c.swap(a, ob, i);
                   return Math.max(0, Math.round(e))
               }
               return c.curCSS(a, b, d)
           },
           curCSS: function (a, b, d) {
               var f, e = a.style;
               if (!c.support.opacity && b === "opacity" && a.currentStyle) {
                   f = Oa.test(a.currentStyle.filter || "") ? parseFloat(RegExp.$1) / 100 + "" : "";
                   return f === "" ? "1" : f
               }
               if (ha.test(B)) b = Pa;
               if (!d && e && e[b]) f = e[b];
               else if (rb) {
                   if (ha.test(B)) b = "float";
                   b = b.replace(lb, "-$1").toLowerCase();
                   e = a.ownerDocument.defaultView;
                   if (!e) return null;
                   if (a = e.getComputedStyle(a, null)) f = a.getPropertyValue(B);
                   if (b === "opacity" && f === "") f = "1"
               } else if (a.currentStyle) {
                   d = b.replace(ia, ja);
                   f = a.currentStyle[b] || a.currentStyle[d];
                   if (!mb.test(f) && nb.test(f)) {
                       b = e.left;
                       var j = a.runtimeStyle.left;
                       a.runtimeStyle.left = a.currentStyle.left;
                       e.left = d === "fontSize" ? "1em" : f || 0;
                       f = e.pixelLeft + "px";
                       e.left = b;
                       a.runtimeStyle.left = j
                   }
               }
               return f
           },
           swap: function (a, b, d) {
               var f = {};
               for (var e in B) {
                   f[e] = a.style[e];
                   a.style[e] = b[e]
               }
               d.call(a);
               for (e in B) a.style[e] = f[e]
           }
       });
   if (c.expr && c.expr.filters) {
           c.expr.filters.hidden = function (a) {
               var b =
               a.offsetWidth,
                   d = a.offsetHeight,
                   f = a.nodeName.toLowerCase() === "tr";
               return b === 0 && d === 0 && !f ? true : b > 0 && d > 0 && !f ? false : c.curCSS(a, "display") === "none"
           };
           c.expr.filters.visible = function (a) {
               return !c.expr.filters.hidden(a)
           }
       }
   var sb = J(),
       tb = /<script(.|\s)*?\/script>/gi,
       ub = /select|textarea/i,
       vb = /color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,
       N = /=\?(&|$)/,
       ka = /\?/,
       wb = /(\?|&)_=.*?(&|$)/,
       xb = /^(\w+:)?\/\/([^\/?#]+)/,
       yb = /%20/g,
       zb = c.fn.load;
   c.fn.extend({
           load: function (a, b, d) {
               if (typeof a !== "string") return zb.call(this, a);
               else if (!this.length) return this;
               var f = a.indexOf(" ");
               if (f >= 0) {
                   var e = a.slice(f, a.length);
                   a = a.slice(0, f)
               }
               f = "GET";
               if (B) if (c.isFunction(B)) {
                   d = b;
                   b = null
               } else if (typeof b === "object") {
                   b = c.param(b, c.ajaxSettings.traditional);
                   f = "POST"
               }
               var j = this;
               c.ajax({
                   url: a,
                   type: f,
                   dataType: "html",
                   data: b,
                   complete: function (i, o) {
                       if (o === "success" || o === "notmodified") j.html(e ? c("<div />").append(i.responseText.replace(tb, "")).find(e) : i.responseText);
                       d && j.each(d, [i.responseText, o, i])
                   }
               });
               return this
           },
           serialize: function () {
               return c.param(this.serializeArray())
           },
           serializeArray: function () {
               return this.map(function () {
                   return this.elements ? c.makeArray(this.elements) : this
               }).filter(function () {
                   return this.name && !this.disabled && (this.checked || ub.test(this.nodeName) || vb.test(this.type))
               }).map(function (a, B) {
                   a = c(this).val();
                   return a == null ? null : c.isArray(a) ? c.map(a, function (d) {
                       return {
                           name: b.name,
                           value: d
                       }
                   }) : {
                       name: b.name,
                       value: a
                   }
               }).get()
           }
       });
   c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), function (a, B) {
           c.fn[b] = function (d) {
               return this.bind(b, d)
           }
       });
   c.extend({
           get: function (a, b, d, f) {
               if (c.isFunction(B)) {
                   f = f || d;
                   d = b;
                   b = null
               }
               return c.ajax({
                   type: "GET",
                   url: a,
                   data: b,
                   success: d,
                   dataType: f
               })
           },
           getScript: function (a, B) {
               return c.get(a, null, b, "script")
           },
           getJSON: function (a, b, d) {
               return c.get(a, b, d, "json")
           },
           post: function (a, b, d, f) {
               if (c.isFunction(B)) {
                   f = f || d;
                   d = b;
                   b = {}
               }
               return c.ajax({
                   type: "POST",
                   url: a,
                   data: b,
                   success: d,
                   dataType: f
               })
           },
           ajaxSetup: function (a) {
               c.extend(c.ajaxSettings, a)
           },
           ajaxSettings: {
               url: location.href,
               global: true,
               type: "GET",
               contentType: "application/x-www-form-urlencoded",
               processData: true,
               async: true,
               xhr: A.XMLHttpRequest && (A.location.protocol !== "file:" || !A.ActiveXObject) ?
               function () {
                   return new A.XMLHttpRequest
               } : function () {
                   try {
                       return new A.ActiveXObject("Microsoft.XMLHTTP")
                   } catch (a) {}
               },
               accepts: {
                   xml: "application/xml, text/xml",
                   html: "text/html",
                   script: "text/javascript, application/javascript",
                   json: "application/json, text/javascript",
                   text: "text/plain",
                   _default: "*/*"
               }
           },
           lastModified: {},
           etag: {},
           ajax: function (a) {
               function b() {
                   e.success && e.success.call(k, o, i, x);
                   e.global && f("ajaxSuccess", [x, e])
               }
               function d() {
                   e.complete && e.complete.call(k, x, i);
                   e.global && f("ajaxComplete", [x, e]);
                   e.global && !--c.active && c.event.trigger("ajaxStop")
               }
               function f(q, p) {
                   (e.context ? c(e.context) : c.event).trigger(q, p)
               }
               var e = c.extend(true, {}, c.ajaxSettings, a),
                   j, i, o, k = a && a.context || e,
                   n = e.type.toUpperCase();
               if (e.data && e.processData && typeof e.data !== "string") e.data = c.param(e.data, e.traditional);
               if (e.dataType === "jsonp") {
                       if (n === "GET") N.test(e.url) || (e.url += (ka.test(e.url) ? "&" : "?") + (e.jsonp || "callback") + "=?");
                       else if (!e.data || !N.test(e.data)) e.data = (e.data ? e.data + "&" : "") + (e.jsonp || "callback") + "=?";
                       e.dataType = "json"
                   }
               if (e.dataType === "json" && (e.data && N.test(e.data) || N.test(e.url))) {
                       j = e.jsonpCallback || "jsonp" + sb++;
                       if (e.data) e.data = (e.data + "").replace(N, "=" + j + "$1");
                       e.url = e.url.replace(N, "=" + j + "$1");
                       e.dataType = "script";
                       A[j] = A[j] ||
                       function (q) {
                           o = q;
                           b();
                           d();
                           A[j] = w;
                           try {
                               delete A[j]
                           } catch (p) {}
                           z && z.removeChild(C)
                       }
                   }
               if (e.dataType === "script" && e.cache === null) e.cache = false;
               if (e.cache === false && n === "GET") {
                       var r = J(),
                           u = e.url.replace(wb, "$1_=" + r + "$2");
                       e.url = u + (u === e.url ? (ka.test(e.url) ? "&" : "?") + "_=" + r : "")
                   }
               if (e.data && n === "GET") e.url += (ka.test(e.url) ? "&" : "?") + e.data;
               e.global && !c.active++ && c.event.trigger("ajaxStart");
               r = (r = xb.exec(e.url)) && (r[1] && r[1] !== location.protocol || r[2] !== location.host);
               if (e.dataType === "script" && n === "GET" && r) {
                       var z = s.getElementsByTagName("head")[0] || s.documentElement,
                           C = s.createElement("script");
                       C.src = e.url;
                       if (e.scriptCharset) C.charset = e.scriptCharset;
                       if (!j) {
                               var B =
                               false;
                               C.onload = C.onreadystatechange = function () {
                                   if (!B && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete")) {
                                       B = true;
                                       b();
                                       d();
                                       C.onload = C.onreadystatechange = null;
                                       z && C.parentNode && z.removeChild(C)
                                   }
                               }
                           }
                       z.insertBefore(C, z.firstChild);
                       return w
                   }
               var E = false,
                   x = e.xhr();
               if (x) {
                       e.username ? x.open(n, e.url, e.async, e.username, e.password) : x.open(n, e.url, e.async);
                       try {
                           if (e.data || a && a.contentType) x.setRequestHeader("Content-Type", e.contentType);
                           if (e.ifModified) {
                               c.lastModified[e.url] && x.setRequestHeader("If-Modified-Since", c.lastModified[e.url]);
                               c.etag[e.url] && x.setRequestHeader("If-None-Match", c.etag[e.url])
                           }
                           r || x.setRequestHeader("X-Requested-With", "XMLHttpRequest");
                           x.setRequestHeader("Accept", e.dataType && e.accepts[e.dataType] ? e.accepts[e.dataType] + ", */*" : e.accepts._default)
                       } catch (ga) {}
                       if (e.beforeSend && e.beforeSend.call(k, x, e) === false) {
                           e.global && !--c.active && c.event.trigger("ajaxStop");
                           x.abort();
                           return false
                       }
                       e.global && f("ajaxSend", [x, e]);
                       var g = x.onreadystatechange = function (q) {
                           if (!x || x.readyState === 0 || q === "abort") {
                               E || d();
                               E = true;
                               if (x) x.onreadystatechange = c.noop
                           } else if (!E && x && (x.readyState === 4 || q === "timeout")) {
                               E = true;
                               x.onreadystatechange = c.noop;
                               i = q === "timeout" ? "timeout" : !c.httpSuccess(x) ? "error" : e.ifModified && c.httpNotModified(x, e.url) ? "notmodified" : "success";
                               var p;
                               if (i === "success") try {
                                   o = c.httpData(x, e.dataType, e)
                               } catch (v) {
                                   i = "parsererror";
                                   p = v
                               }
                               if (i === "success" || i === "notmodified") j || b();
                               else c.handleError(e, x, i, p);
                               d();
                               q === "timeout" && x.abort();
                               if (e.async) x = null
                           }
                       };
                       try {
                           var h = x.abort;
                           x.abort = function () {
                               x && h.call(x);
                               g("abort")
                           }
                       } catch (l) {}
                       e.async && e.timeout > 0 && setTimeout(function () {
                           x && !E && g("timeout")
                       }, e.timeout);
                       try {
                           x.send(n === "POST" || n === "PUT" || n === "DELETE" ? e.data : null)
                       } catch (m) {
                           c.handleError(e, x, null, m);
                           d()
                       }
                       e.async || g();
                       return x
                   }
           },
           handleError: function (a, b, d, f) {
               if (a.error) a.error.call(a.context || a, b, d, f);
               if (a.global)(a.context ? c(a.context) : c.event).trigger("ajaxError", [b, a, f])
           },
           active: 0,
           httpSuccess: function (a) {
               try {
                   return !a.status && location.protocol === "file:" || a.status >= 200 && a.status < 300 || a.status === 304 || a.status === 1223 || a.status === 0
               } catch (B) {}
               return false
           },
           httpNotModified: function (a, B) {
               var d = a.getResponseHeader("Last-Modified"),
                   f = a.getResponseHeader("Etag");
               if (d) c.lastModified[b] = d;
               if (f) c.etag[b] = f;
               return a.status === 304 || a.status === 0
           },
           httpData: function (a, b, d) {
               var f = a.getResponseHeader("content-type") || "",
                   e = b === "xml" || !b && f.indexOf("xml") >= 0;
               a = e ? a.responseXML : a.responseText;
               e && a.documentElement.nodeName === "parsererror" && c.error("parsererror");
               if (d && d.dataFilter) a = d.dataFilter(a, B);
               if (typeof a === "string") if (b === "json" || !b && f.indexOf("json") >= 0) a = c.parseJSON(a);
               else if (b === "script" || !b && f.indexOf("javascript") >= 0) c.globalEval(a);
               return a
           },
           param: function (a, B) {
               function d(i, o) {
                   if (c.isArray(o)) c.each(o, function (k, n) {
                       b || /\[\]$/.test(i) ? f(i, n) : d(i + "[" + (typeof n === "object" || c.isArray(n) ? k : "") + "]", n)
                   });
                   else!b && o != null && typeof o === "object" ? c.each(o, function (k, n) {
                       d(i + "[" + k + "]", n)
                   }) : f(i, o)
               }
               function f(i, o) {
                   o = c.isFunction(o) ? o() : o;
                   e[e.length] = encodeURIComponent(i) + "=" + encodeURIComponent(o)
               }
               var e = [];
               if (b === w) b = c.ajaxSettings.traditional;
               if (c.isArray(a) || a.jquery) c.each(a, function () {
                   f(this.name, this.value)
               });
               else for (var j in a) d(j, a[j]);
               return e.join("&").replace(yb, "+")
           }
       });
   var la = {},
       Ab = /toggle|show|hide/,
       Bb = /^([+-]=)?([\d+-.]+)(.*)$/,
       W, va = [
           ["height", "marginTop", "marginBottom", "paddingTop", "paddingBottom"],
           ["width", "marginLeft", "marginRight", "paddingLeft", "paddingRight"],
           ["opacity"]
   ];
   c.fn.extend({
           show: function (a, B) {
               if (a || a === 0) return this.animate(K("show", 3), a, B);
               else {
                   a = 0;
                   for (b = this.length; a < b; a++) {
                       var d = c.data(this[a], "olddisplay");
                       this[a].style.display = d || "";
                       if (c.css(this[a], "display") === "none") {
                           d = this[a].nodeName;
                           var f;
                           if (la[d]) f = la[d];
                           else {
                               var e = c("<" + d + " />").appendTo("body");
                               f = e.css("display");
                               if (f === "none") f = "block";
                               e.remove();
                               la[d] = f
                           }
                           c.data(this[a], "olddisplay", f)
                       }
                   }
                   a = 0;
                   for (b = this.length; a < b; a++) this[a].style.display = c.data(this[a], "olddisplay") || "";
                   return this
               }
           },
           hide: function (a, B) {
               if (a || a === 0) return this.animate(K("hide", 3), a, B);
               else {
                   a = 0;
                   for (b = this.length; a < b; a++) {
                       var d = c.data(this[a], "olddisplay");
                       !d && d !== "none" && c.data(this[a], "olddisplay", c.css(this[a], "display"))
                   }
                   a = 0;
                   for (b = this.length; a < b; a++) this[a].style.display = "none";
                   return this
               }
           },
           _toggle: c.fn.toggle,
           toggle: function (a, B) {
               var d = typeof a === "boolean";
               if (c.isFunction(a) && c.isFunction(B)) this._toggle.apply(this, arguments);
               else a == null || d ? this.each(function () {
                   var f = d ? a : c(this).is(":hidden");
                   c(this)[f ? "show" : "hide"]()
               }) : this.animate(K("toggle", 3), a, B);
               return this
           },
           fadeTo: function (a, b, d) {
               return this.filter(":hidden").css("opacity", 0).show().end().animate({
                   opacity: b
               }, a, d)
           },
           animate: function (a, b, d, f) {
               var e = c.speed(b, d, f);
               if (c.isEmptyObject(a)) return this.each(e.complete);
               return this[e.queue === false ? "each" : "queue"](function () {
                   var j = c.extend({}, e),
                       i, o = this.nodeType === 1 && c(this).is(":hidden"),
                       k = this;
                   for (i in a) {
                           var n = i.replace(ia, ja);
                           if (i !== n) {
                               a[n] = a[i];
                               delete a[i];
                               i = n
                           }
                           if (a[i] === "hide" && o || a[i] === "show" && !o) return j.complete.call(this);
                           if ((i === "height" || i === "width") && this.style) {
                               j.display = c.css(this, "display");
                               j.overflow = this.style.overflow
                           }
                           if (c.isArray(a[i])) {
                               (j.specialEasing =
                               j.specialEasing || {})[i] = a[i][1];
                               a[i] = a[i][0]
                           }
                       }
                   if (j.overflow != null) this.style.overflow = "hidden";
                   j.curAnim = c.extend({}, a);
                   c.each(a, function (r, u) {
                           var z = new c.fx(k, j, r);
                           if (Ab.test(u)) z[u === "toggle" ? o ? "show" : "hide" : u](a);
                           else {
                               var C = Bb.exec(u),
                                   B = z.cur(true) || 0;
                               if (C) {
                                       u = parseFloat(C[2]);
                                       var E = C[3] || "px";
                                       if (E !== "px") {
                                           k.style[r] = (u || 1) + E;
                                           B = (u || 1) / z.cur(true) * B;
                                           k.style[r] = B + E
                                       }
                                       if (C[1]) u = (C[1] === "-=" ? -1 : 1) * u + B;
                                       z.custom(B, u, E)
                                   } else z.custom(B, u, "")
                           }
                       });
                   return true
               })
           },
           stop: function (a, B) {
               var d = c.timers;
               a && this.queue([]);
               this.each(function () {
                   for (var f = d.length - 1; f >= 0; f--) if (d[f].elem === this) {
                       b && d[f](true);
                       d.splice(f, 1)
                   }
               });
               b || this.dequeue();
               return this
           }
       });
   c.each({
           slideDown: K("show", 1),
           slideUp: K("hide", 1),
           slideToggle: K("toggle", 1),
           fadeIn: {
               opacity: "show"
           },
           fadeOut: {
               opacity: "hide"
           }
       }, function (a, B) {
           c.fn[a] = function (d, f) {
               return this.animate(b, d, f)
           }
       });
   c.extend({
           speed: function (a, b, d) {
               var f = a && typeof a === "object" ? a : {
                   complete: d || !d && b || c.isFunction(a) && a,
                   duration: a,
                   easing: d && b || b && !c.isFunction(B) && b
               };
               f.duration = c.fx.off ? 0 : typeof f.duration === "number" ? f.duration : c.fx.speeds[f.duration] || c.fx.speeds._default;
               f.old = f.complete;
               f.complete = function () {
                   f.queue !== false && c(this).dequeue();
                   c.isFunction(f.old) && f.old.call(this)
               };
               return f
           },
           easing: {
               linear: function (a, b, d, f) {
                   return d + f * a
               },
               swing: function (a, b, d, f) {
                   return (-Math.cos(a * Math.PI) / 2 + 0.5) * f + d
               }
           },
           timers: [],
           fx: function (a, b, d) {
               this.options = b;
               this.elem = a;
               this.prop = d;
               if (!b.orig) b.orig = {}
           }
       });
   c.fx.prototype = {
           update: function () {
               this.options.step && this.options.step.call(this.elem, this.now, this);
               (c.fx.step[this.prop] || c.fx.step._default)(this);
               if ((this.prop === "height" || this.prop === "width") && this.elem.style) this.elem.style.display = "block"
           },
           cur: function (a) {
               if (this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null)) return this.elem[this.prop];
               return (a = parseFloat(c.css(this.elem, this.prop, a))) && a > -10000 ? a : parseFloat(c.curCSS(this.elem, this.prop)) || 0
           },
           custom: function (a, b, d) {
               function f(j) {
                   return e.step(j)
               }
               this.startTime = J();
               this.start = a;
               this.end = b;
               this.unit = d || this.unit || "px";
               this.now = this.start;
               this.pos = this.state = 0;
               var e = this;
               f.elem = this.elem;
               if (f() && c.timers.push(f) && !W) W = setInterval(c.fx.tick, 13)
           },
           show: function () {
               this.options.orig[this.prop] = c.style(this.elem, this.prop);
               this.options.show = true;
               this.custom(this.prop === "width" || this.prop === "height" ? 1 : 0, this.cur());
               c(this.elem).show()
           },
           hide: function () {
               this.options.orig[this.prop] = c.style(this.elem, this.prop);
               this.options.hide = true;
               this.custom(this.cur(), 0)
           },
           step: function (a) {
               var b = J(),
                   d = true;
               if (a || b >= this.options.duration + this.startTime) {
                       this.now =
                       this.end;
                       this.pos = this.state = 1;
                       this.update();
                       this.options.curAnim[this.prop] = true;
                       for (var f in this.options.curAnim) if (this.options.curAnim[f] !== true) d = false;
                       if (d) {
                           if (this.options.display != null) {
                               this.elem.style.overflow = this.options.overflow;
                               a = c.data(this.elem, "olddisplay");
                               this.elem.style.display = a ? a : this.options.display;
                               if (c.css(this.elem, "display") === "none") this.elem.style.display = "block"
                           }
                           this.options.hide && c(this.elem).hide();
                           if (this.options.hide || this.options.show) for (var e in this.options.curAnim) c.style(this.elem, e, this.options.orig[e]);
                           this.options.complete.call(this.elem)
                       }
                       return false
                   } else {
                       e = b - this.startTime;
                       this.state = e / this.options.duration;
                       a = this.options.easing || (c.easing.swing ? "swing" : "linear");
                       this.pos = c.easing[this.options.specialEasing && this.options.specialEasing[this.prop] || a](this.state, e, 0, 1, this.options.duration);
                       this.now = this.start + (this.end - this.start) * this.pos;
                       this.update()
                   }
               return true
           }
       };
   c.extend(c.fx, {
           tick: function () {
               for (var a = c.timers, b = 0; b < a.length; b++) a[b]() || a.splice(b--, 1);
               a.length || c.fx.stop()
           },
           stop: function () {
               clearInterval(W);
               W = null
           },
           speeds: {
               slow: 600,
               fast: 200,
               _default: 400
           },
           step: {
               opacity: function (a) {
                   c.style(a.elem, "opacity", a.now)
               },
               _default: function (a) {
                   if (a.elem.style && a.elem.style[a.prop] != null) a.elem.style[a.prop] = (a.prop === "width" || a.prop === "height" ? Math.max(0, a.now) : a.now) + a.unit;
                   else a.elem[a.prop] = a.now
               }
           }
       });
   if (c.expr && c.expr.filters) c.expr.filters.animated = function (a) {
           return c.grep(c.timers, function (B) {
               return a === b.elem
           }).length
       };
   c.fn.offset = "getBoundingClientRect" in s.documentElement ?
   function (a) {
           var b = this[0];
           if (a) return this.each(function (e) {
               c.offset.setOffset(this, a, e)
           });
           if (!b || !b.ownerDocument) return null;
           if (b === b.ownerDocument.body) return c.offset.bodyOffset(B);
           var d = b.getBoundingClientRect(),
               f = b.ownerDocument;
           b = f.body;
           f = f.documentElement;
           return {
                   top: d.top + (self.pageYOffset || c.support.boxModel && f.scrollTop || b.scrollTop) - (f.clientTop || b.clientTop || 0),
                   left: d.left + (self.pageXOffset || c.support.boxModel && f.scrollLeft || b.scrollLeft) - (f.clientLeft || b.clientLeft || 0)
               }
       } : function (a) {
           var b =
           this[0];
           if (a) return this.each(function (r) {
               c.offset.setOffset(this, a, r)
           });
           if (!b || !b.ownerDocument) return null;
           if (b === b.ownerDocument.body) return c.offset.bodyOffset(B);
           c.offset.initialize();
           var d = b.offsetParent,
               f = b,
               e = b.ownerDocument,
               j, i = e.documentElement,
               o = e.body;
           f = (e = e.defaultView) ? e.getComputedStyle(b, null) : b.currentStyle;
           for (var k = b.offsetTop, n = b.offsetLeft;
               (b = b.parentNode) && b !== o && b !== i;) {
                   if (c.offset.supportsFixedPosition && f.position === "fixed") break;
                   j = e ? e.getComputedStyle(b, null) : b.currentStyle;
                   k -= b.scrollTop;
                   n -= b.scrollLeft;
                   if (b === d) {
                       k += b.offsetTop;
                       n += b.offsetLeft;
                       if (c.offset.doesNotAddBorder && !(c.offset.doesAddBorderForTableAndCells && /^t(able|d|h)$/i.test(b.nodeName))) {
                           k += parseFloat(j.borderTopWidth) || 0;
                           n += parseFloat(j.borderLeftWidth) || 0
                       }
                       f = d;
                       d = b.offsetParent
                   }
                   if (c.offset.subtractsBorderForOverflowNotVisible && j.overflow !== "visible") {
                       k += parseFloat(j.borderTopWidth) || 0;
                       n += parseFloat(j.borderLeftWidth) || 0
                   }
                   f = j
               }
           if (f.position === "relative" || f.position === "static") {
                   k += o.offsetTop;
                   n += o.offsetLeft
               }
           if (c.offset.supportsFixedPosition && f.position === "fixed") {
                   k += Math.max(i.scrollTop, o.scrollTop);
                   n += Math.max(i.scrollLeft, o.scrollLeft)
               }
           return {
                   top: k,
                   left: n
               }
       };
   c.offset = {
           initialize: function () {
               var a = s.body,
                   b = s.createElement("div"),
                   d, f, e, j = parseFloat(c.curCSS(a, "marginTop", true)) || 0;
               c.extend(b.style, {
                       position: "absolute",
                       top: 0,
                       left: 0,
                       margin: 0,
                       border: 0,
                       width: "1px",
                       height: "1px",
                       visibility: "hidden"
                   });
               b.innerHTML = "<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
               a.insertBefore(b, a.firstChild);
               d = b.firstChild;
               f = d.firstChild;
               e = d.nextSibling.firstChild.firstChild;
               this.doesNotAddBorder = f.offsetTop !== 5;
               this.doesAddBorderForTableAndCells = e.offsetTop === 5;
               f.style.position = "fixed";
               f.style.top = "20px";
               this.supportsFixedPosition = f.offsetTop === 20 || f.offsetTop === 15;
               f.style.position = f.style.top = "";
               d.style.overflow = "hidden";
               d.style.position = "relative";
               this.subtractsBorderForOverflowNotVisible = f.offsetTop === -5;
               this.doesNotIncludeMarginInBodyOffset = a.offsetTop !== j;
               a.removeChild(B);
               c.offset.initialize = c.noop
           },
           bodyOffset: function (a) {
               var b = a.offsetTop,
                   d = a.offsetLeft;
               c.offset.initialize();
               if (c.offset.doesNotIncludeMarginInBodyOffset) {
                       b += parseFloat(c.curCSS(a, "marginTop", true)) || 0;
                       d += parseFloat(c.curCSS(a, "marginLeft", true)) || 0
                   }
               return {
                       top: b,
                       left: d
                   }
           },
           setOffset: function (a, b, d) {
               if (/static/.test(c.curCSS(a, "position"))) a.style.position = "relative";
               var f = c(a),
                   e = f.offset(),
                   j = parseInt(c.curCSS(a, "top", true), 10) || 0,
                   i = parseInt(c.curCSS(a, "left", true), 10) || 0;
               if (c.isFunction(B)) b = b.call(a, d, e);
               d = {
                       top: b.top - e.top + j,
                       left: b.left - e.left + i
                   };
               "using" in b ? b.using.call(a, d) : f.css(d)
           }
       };
   c.fn.extend({
           position: function () {
               if (!this[0]) return null;
               var a = this[0],
                   b = this.offsetParent(),
                   d = this.offset(),
                   f = /^body|html$/i.test(b[0].nodeName) ? {
                       top: 0,
                       left: 0
                   } : b.offset();
               d.top -= parseFloat(c.curCSS(a, "marginTop", true)) || 0;
               d.left -= parseFloat(c.curCSS(a, "marginLeft", true)) || 0;
               f.top += parseFloat(c.curCSS(b[0], "borderTopWidth", true)) || 0;
               f.left += parseFloat(c.curCSS(b[0], "borderLeftWidth", true)) || 0;
               return {
                       top: d.top - f.top,
                       left: d.left - f.left
                   }
           },
           offsetParent: function () {
               return this.map(function () {
                   for (var a = this.offsetParent || s.body; a && !/^body|html$/i.test(a.nodeName) && c.css(a, "position") === "static";) a = a.offsetParent;
                   return a
               })
           }
       });
   c.each(["Left", "Top"], function (a, B) {
           var d = "scroll" + b;
           c.fn[d] = function (f) {
               var e = this[0],
                   j;
               if (!e) return null;
               if (f !== w) return this.each(function () {
                       if (j = wa(this)) j.scrollTo(!a ? f : c(j).scrollLeft(), a ? f : c(j).scrollTop());
                       else this[d] = f
                   });
               else return (j = wa(e)) ? "pageXOffset" in j ? j[a ? "pageYOffset" : "pageXOffset"] : c.support.boxModel && j.document.documentElement[d] || j.document.body[d] : e[d]
           }
       });
   c.each(["Height", "Width"], function (a, B) {
           var d = b.toLowerCase();
           c.fn["inner" + b] = function () {
               return this[0] ? c.css(this[0], d, false, "padding") : null
           };
           c.fn["outer" + b] = function (f) {
               return this[0] ? c.css(this[0], d, false, f ? "margin" : "border") : null
           };
           c.fn[d] = function (f) {
               var e = this[0];
               if (!e) return f == null ? null : this;
               if (c.isFunction(f)) return this.each(function (j) {
                   var i = c(this);
                   i[d](f.call(this, j, i[d]()))
               });
               return "scrollTo" in e && e.document ? e.document.compatMode === "CSS1Compat" && e.document.documentElement["client" + b] || e.document.body["client" + b] : e.nodeType === 9 ? Math.max(e.documentElement["client" + b], e.body["scroll" + b], e.documentElement["scroll" + b], e.body["offset" + b], e.documentElement["offset" + b]) : f === w ? c.css(e, d) : this.css(d, typeof f === "string" ? f : f + "px")
           }
       });
   A.jQuery = A.$ = c
})(window);

 

 

 

 

>
jquery.easing-1.3.pack.js

/*
* jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
*
* Uses the built in easing capabilities added In jQuery 1.1
* to offer multiple easing options
*
* TERMS OF USE - jQuery Easing
* 
* Open source under the BSD License. 
* 
* Copyright © 2008 George McGinley Smith
* All rights reserved.
* 
* Redistribution and use in source and binary forms, with or without modification, 
* are permitted provided that the following conditions are met:
* 
* Redistributions of source code must retain the above copyright notice, this list of 
* conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list 
* of conditions and the following disclaimer in the documentation and/or other materials 
* provided with the distribution.
* 
* Neither the name of the author nor the names of contributors may be used to endorse 
* or promote products derived from this software without specific prior written permission.
* 
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
*  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
*  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
*  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
*  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
* OF THE POSSIBILITY OF SUCH DAMAGE. 
*
*/

// t: current time, b: begInnIng value, c: change In value, d: duration
eval(function (p, a, c, k, e, r) {
   e = function (c) {
       return (c < a ? '' : e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36))
   };
   if (!''.replace(/^/, String)) {
       while (c--) r[e(c)] = k[c] || e(c);
       k = [function (e) {
           return r[e]
       }];
       e = function () {
           return '\\w+'
       };
       c = 1
   };
   while (c--) if (k[c]) p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]);
   return p
}('h.i[\'1a\']=h.i[\'z\'];h.O(h.i,{y:\'D\',z:9(x,t,b,c,d){6 h.i[h.i.y](x,t,b,c,d)},17:9(x,t,b,c,d){6 c*(t/=d)*t+b},D:9(x,t,b,c,d){6-c*(t/=d)*(t-2)+b},13:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t+b;6-c/2*((--t)*(t-2)-1)+b},X:9(x,t,b,c,d){6 c*(t/=d)*t*t+b},U:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t+1)+b},R:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t+b;6 c/2*((t-=2)*t*t+2)+b},N:9(x,t,b,c,d){6 c*(t/=d)*t*t*t+b},M:9(x,t,b,c,d){6-c*((t=t/d-1)*t*t*t-1)+b},L:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t+b;6-c/2*((t-=2)*t*t*t-2)+b},K:9(x,t,b,c,d){6 c*(t/=d)*t*t*t*t+b},J:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t*t*t+1)+b},I:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t*t+b;6 c/2*((t-=2)*t*t*t*t+2)+b},G:9(x,t,b,c,d){6-c*8.C(t/d*(8.g/2))+c+b},15:9(x,t,b,c,d){6 c*8.n(t/d*(8.g/2))+b},12:9(x,t,b,c,d){6-c/2*(8.C(8.g*t/d)-1)+b},Z:9(x,t,b,c,d){6(t==0)?b:c*8.j(2,10*(t/d-1))+b},Y:9(x,t,b,c,d){6(t==d)?b+c:c*(-8.j(2,-10*t/d)+1)+b},W:9(x,t,b,c,d){e(t==0)6 b;e(t==d)6 b+c;e((t/=d/2)<1)6 c/2*8.j(2,10*(t-1))+b;6 c/2*(-8.j(2,-10*--t)+2)+b},V:9(x,t,b,c,d){6-c*(8.o(1-(t/=d)*t)-1)+b},S:9(x,t,b,c,d){6 c*8.o(1-(t=t/d-1)*t)+b},Q:9(x,t,b,c,d){e((t/=d/2)<1)6-c/2*(8.o(1-t*t)-1)+b;6 c/2*(8.o(1-(t-=2)*t)+1)+b},P:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6-(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b},H:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6 a*8.j(2,-10*t)*8.n((t*d-s)*(2*8.g)/p)+c+b},T:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d/2)==2)6 b+c;e(!p)p=d*(.3*1.5);e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);e(t<1)6-.5*(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b;6 a*8.j(2,-10*(t-=1))*8.n((t*d-s)*(2*8.g)/p)*.5+c+b},F:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*(t/=d)*t*((s+1)*t-s)+b},E:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},16:9(x,t,b,c,d,s){e(s==u)s=1.l;e((t/=d/2)<1)6 c/2*(t*t*(((s*=(1.B))+1)*t-s))+b;6 c/2*((t-=2)*t*(((s*=(1.B))+1)*t+s)+2)+b},A:9(x,t,b,c,d){6 c-h.i.v(x,d-t,0,c,d)+b},v:9(x,t,b,c,d){e((t/=d)<(1/2.k)){6 c*(7.q*t*t)+b}m e(t<(2/2.k)){6 c*(7.q*(t-=(1.5/2.k))*t+.k)+b}m e(t<(2.5/2.k)){6 c*(7.q*(t-=(2.14/2.k))*t+.11)+b}m{6 c*(7.q*(t-=(2.18/2.k))*t+.19)+b}},1b:9(x,t,b,c,d){e(t<d/2)6 h.i.A(x,t*2,0,c,d)*.5+b;6 h.i.v(x,t*2-d,0,c,d)*.5+c*.5+b}});', 62, 74, '||||||return||Math|function|||||if|var|PI|jQuery|easing|pow|75|70158|else|sin|sqrt||5625|asin|||undefined|easeOutBounce|abs||def|swing|easeInBounce|525|cos|easeOutQuad|easeOutBack|easeInBack|easeInSine|easeOutElastic|easeInOutQuint|easeOutQuint|easeInQuint|easeInOutQuart|easeOutQuart|easeInQuart|extend|easeInElastic|easeInOutCirc|easeInOutCubic|easeOutCirc|easeInOutElastic|easeOutCubic|easeInCirc|easeInOutExpo|easeInCubic|easeOutExpo|easeInExpo||9375|easeInOutSine|easeInOutQuad|25|easeOutSine|easeInOutBack|easeInQuad|625|984375|jswing|easeInOutBounce'.split('|'), 0, {}))

 

 

 

 

>
jquery.fancybox-1.3.1.pack.js

/*   paste in your code and press Beautify button   */
if ('this_is' == /an_example/) {
   do_something();
} else {
   var a = b ? (c % d) : e[f];
}
/*
* FancyBox - jQuery Plugin
* Simple and fancy lightbox alternative
*
* Examples and documentation at: http://fancybox.net
* 
* Copyright (c) 2008 - 2010 Janis Skarnelis
*
* Version: 1.3.1 (05/03/2010)
* Requires: jQuery v1.3+
*
* Dual licensed under the MIT and GPL licenses:
*   http://www.opensource.org/licenses/mit-license.php
*   http://www.gnu.org/licenses/gpl.html
*/

(function (B) {
   var m, u, x, g, D, i, z, A, B, p = 0,
       e = {},
       q = [],
       n = 0,
       c = {},
       j = [],
       E = null,
       s = new Image,
       G = /\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,
       S = /[^\.]\.(swf)\s*$/i,
       H, I = 1,
       k, l, h = false,
       y = b.extend(b("<div/>")[0], {
           prop: 0
       }),
       v = 0,
       O = !b.support.opacity && !window.XMLHttpRequest,
       J = function () {
           u.hide();
           s.onerror = s.onload = null;
           E && E.abort();
           m.empty()
       },
       P = function () {
           b.fancybox('<p id="fancybox_error">The requested content cannot be loaded.<br />Please try again later.</p>', {
               scrolling: "no",
               padding: 20,
               transitionIn: "none",
               transitionOut: "none"
           })
       },
       K = function () {
           return [b(window).width(), b(window).height(), b(document).scrollLeft(), b(document).scrollTop()]
       },
       T = function () {
           var a = K(),
               d = {},
               f = c.margin,
               o = c.autoScale,
               t = (20 + f) * 2,
               w = (20 + f) * 2,
               r = c.padding * 2;
           if (c.width.toString().indexOf("%") > -1) {
                   d.width = a[0] * parseFloat(c.width) / 100 - 40;
                   o = false
               } else d.width = c.width + r;
           if (c.height.toString().indexOf("%") > -1) {
                   d.height = a[1] * parseFloat(c.height) / 100 - 40;
                   o = false
               } else d.height = c.height + r;
           if (o && (d.width > a[0] - t || d.height > a[1] - w)) if (e.type == "image" || e.type == "swf") {
                   t += r;
                   w += r;
                   o = Math.min(Math.min(a[0] - t, c.width) / c.width, Math.min(a[1] - w, c.height) / c.height);
                   d.width = Math.round(o * (d.width - r)) + r;
                   d.height = Math.round(o * (d.height - r)) + r
               } else {
                   d.width = Math.min(d.width, a[0] - t);
                   d.height = Math.min(d.height, a[1] - w)
               }
           d.top = a[3] + (a[1] - (d.height + 40)) * 0.5;
           d.left = a[2] + (a[0] - (d.width + 40)) * 0.5;
           if (c.autoScale === false) {
                   d.top = Math.max(a[3] + f, d.top);
                   d.left = Math.max(a[2] + f, d.left)
               }
           return d
       },
       U = function (a) {
           if (a && a.length) switch (c.titlePosition) {
           case "inside":
               return a;
           case "over":
               return '<span id="fancybox-title-over">' + a + "</span>";
           default:
               return '<span id="fancybox-title-wrap"><span id="fancybox-title-left"></span><span id="fancybox-title-main">' + a + '</span><span id="fancybox-title-right"></span></span>'
           }
           return false
       },
       V = function () {
           var a = c.title,
               d = l.width - c.padding * 2,
               f = "fancybox-title-" + c.titlePosition;
           b("#fancybox-title").remove();
           v = 0;
           if (c.titleShow !== false) {
                   a = b.isFunction(c.titleFormat) ? c.titleFormat(a, j, n, c) : U(a);
                   if (!(!a || a === "")) {
                       b('<div id="fancybox-title" class="' + f + '" />').css({
                           width: d,
                           paddingLeft: c.padding,
                           paddingRight: c.padding
                       }).html(a).appendTo("body");
                       switch (c.titlePosition) {
                       case "inside":
                           v = b("#fancybox-title").outerHeight(true) - c.padding;
                           l.height += v;
                           break;
                       case "over":
                           b("#fancybox-title").css("bottom", c.padding);
                           break;
                       default:
                           b("#fancybox-title").css("bottom", b("#fancybox-title").outerHeight(true) * -1);
                           break
                       }
                       b("#fancybox-title").appendTo(D).hide()
                   }
               }
       },
       W = function () {
           b(document).unbind("keydown.fb").bind("keydown.fb", function (a) {
               if (a.keyCode == 27 && c.enableEscapeButton) {
                   a.preventDefault();
                   b.fancybox.close()
               } else if (a.keyCode == 37) {
                   a.preventDefault();
                   b.fancybox.prev()
               } else if (a.keyCode == 39) {
                   a.preventDefault();
                   b.fancybox.next()
               }
           });
           if (b.fn.mousewheel) {
               g.unbind("mousewheel.fb");
               j.length > 1 && g.bind("mousewheel.fb", function (a, d) {
                   a.preventDefault();
                   h || d === 0 || (d > 0 ? b.fancybox.prev() : b.fancybox.next())
               })
           }
           if (c.showNavArrows) {
               if (c.cyclic && j.length > 1 || n !== 0) A.show();
               if (c.cyclic && j.length > 1 || n != j.length - 1) B.show()
           }
       },
       X = function () {
           var a, d;
           if (j.length - 1 > n) {
               a = j[n + 1].href;
               if (typeof a !== "undefined" && a.match(G)) {
                   d = new Image;
                   d.src = a
               }
           }
           if (n > 0) {
               a =
               j[n - 1].href;
               if (typeof a !== "undefined" && a.match(G)) {
                   d = new Image;
                   d.src = a
               }
           }
       },
       L = function () {
           i.css("overflow", c.scrolling == "auto" ? c.type == "image" || c.type == "iframe" || c.type == "swf" ? "hidden" : "auto" : c.scrolling == "yes" ? "auto" : "visible");
           if (!b.support.opacity) {
               i.get(0).style.removeAttribute("filter");
               g.get(0).style.removeAttribute("filter")
           }
           b("#fancybox-title").show();
           c.hideOnContentClick && i.one("click", b.fancybox.close);
           c.hideOnOverlayClick && x.one("click", b.fancybox.close);
           c.showCloseButton && z.show();
           W();
           b(window).bind("resize.fb", b.fancybox.center);
           c.centerOnScroll ? b(window).bind("scroll.fb", b.fancybox.center) : b(window).unbind("scroll.fb");
           b.isFunction(c.onComplete) && c.onComplete(j, n, c);
           h = false;
           X()
       },
       M = function (a) {
           var d = Math.round(k.width + (l.width - k.width) * a),
               f = Math.round(k.height + (l.height - k.height) * a),
               o = Math.round(k.top + (l.top - k.top) * a),
               t = Math.round(k.left + (l.left - k.left) * a);
           g.css({
                   width: d + "px",
                   height: f + "px",
                   top: o + "px",
                   left: t + "px"
               });
           d = Math.max(d - c.padding * 2, 0);
           f = Math.max(f - (c.padding * 2 + v * a), 0);
           i.css({
                   width: d + "px",
                   height: f + "px"
               });
           if (typeof l.opacity !== "undefined") g.css("opacity", a < 0.5 ? 0.5 : a)
       },
       Y = function (a) {
           var d = a.offset();
           d.top += parseFloat(a.css("paddingTop")) || 0;
           d.left += parseFloat(a.css("paddingLeft")) || 0;
           d.top += parseFloat(a.css("border-top-width")) || 0;
           d.left += parseFloat(a.css("border-left-width")) || 0;
           d.width = a.width();
           d.height = a.height();
           return d
       },
       Q = function () {
           var a = e.orig ? b(e.orig) : false,
               d = {};
           if (a && a.length) {
                   a = Y(a);
                   d = {
                       width: a.width + c.padding * 2,
                       height: a.height + c.padding * 2,
                       top: a.top - c.padding - 20,
                       left: a.left - c.padding - 20
                   }
               } else {
                   a = K();
                   d = {
                       width: 1,
                       height: 1,
                       top: a[3] + a[1] * 0.5,
                       left: a[2] + a[0] * 0.5
                   }
               }
           return d
       },
       N = function () {
           u.hide();
           if (g.is(":visible") && b.isFunction(c.onCleanup)) if (c.onCleanup(j, n, c) === false) {
               b.event.trigger("fancybox-cancel");
               h = false;
               return
           }
           j = q;
           n = p;
           c = e;
           i.get(0).scrollTop = 0;
           i.get(0).scrollLeft = 0;
           if (c.overlayShow) {
               O && b("select:not(#fancybox-tmp select)").filter(function () {
                   return this.style.visibility !== "hidden"
               }).css({
                   visibility: "hidden"
               }).one("fancybox-cleanup", function () {
                   this.style.visibility = "inherit"
               });
               x.css({
                   "background-color": c.overlayColor,
                   opacity: c.overlayOpacity
               }).unbind().show()
           }
           l = T();
           V();
           if (g.is(":visible")) {
               b(z.add(A).add(B)).hide();
               var a = g.position(),
                   d;
               k = {
                       top: a.top,
                       left: a.left,
                       width: g.width(),
                       height: g.height()
                   };
               d = k.width == l.width && k.height == l.height;
               i.fadeOut(c.changeFade, function () {
                       var f = function () {
                           i.html(m.contents()).fadeIn(c.changeFade, L)
                       };
                       b.event.trigger("fancybox-change");
                       i.empty().css("overflow", "hidden");
                       if (d) {
                           i.css({
                               top: c.padding,
                               left: c.padding,
                               width: Math.max(l.width - c.padding * 2, 1),
                               height: Math.max(l.height - c.padding * 2 - v, 1)
                           });
                           f()
                       } else {
                           i.css({
                               top: c.padding,
                               left: c.padding,
                               width: Math.max(k.width - c.padding * 2, 1),
                               height: Math.max(k.height - c.padding * 2, 1)
                           });
                           y.prop = 0;
                           b(y).animate({
                               prop: 1
                           }, {
                               duration: c.changeSpeed,
                               easing: c.easingChange,
                               step: M,
                               complete: f
                           })
                       }
                   })
           } else {
               g.css("opacity", 1);
               if (c.transitionIn == "elastic") {
                   k = Q();
                   i.css({
                       top: c.padding,
                       left: c.padding,
                       width: Math.max(k.width - c.padding * 2, 1),
                       height: Math.max(k.height - c.padding * 2, 1)
                   }).html(m.contents());
                   g.css(k).show();
                   if (c.opacity) l.opacity = 0;
                   y.prop = 0;
                   b(y).animate({
                       prop: 1
                   }, {
                       duration: c.speedIn,
                       easing: c.easingIn,
                       step: M,
                       complete: L
                   })
               } else {
                   i.css({
                       top: c.padding,
                       left: c.padding,
                       width: Math.max(l.width - c.padding * 2, 1),
                       height: Math.max(l.height - c.padding * 2 - v, 1)
                   }).html(m.contents());
                   g.css(l).fadeIn(c.transitionIn == "none" ? 0 : c.speedIn, L)
               }
           }
       },
       F = function () {
           m.width(e.width);
           m.height(e.height);
           if (e.width == "auto") e.width = m.width();
           if (e.height == "auto") e.height = m.height();
           N()
       },
       Z = function () {
           h = true;
           e.width = s.width;
           e.height = s.height;
           b("<img />").attr({
               id: "fancybox-img",
               src: s.src,
               alt: e.title
           }).appendTo(m);
           N()
       },
       C = function () {
           J();
           var a = q[p],
               d, f, o, t, w;
           e = b.extend({}, b.fn.fancybox.defaults, typeof b(a).data("fancybox") == "undefined" ? e : b(a).data("fancybox"));
           o = a.title || b(a).title || e.title || "";
           if (a.nodeName && !e.orig) e.orig = b(a).children("img:first").length ? b(a).children("img:first") : b(a);
           if (o === "" && e.orig) o = e.orig.attr("alt");
           d = a.nodeName && /^(?:javascript|#)/i.test(a.href) ? e.href || null : e.href || a.href || null;
           if (e.type) {
                   f = e.type;
                   if (!d) d = e.content
               } else if (e.content) f = "html";
           else if (d) if (d.match(G)) f = "image";
           else if (d.match(S)) f = "swf";
           else if (b(a).hasClass("iframe")) f = "iframe";
           else if (d.match(/#/)) {
                   a = d.substr(d.indexOf("#"));
                   f = b(a).length > 0 ? "inline" : "ajax"
               } else f = "ajax";
           else f = "inline";
           e.type = f;
           e.href = d;
           e.title = o;
           if (e.autoDimensions && e.type !== "iframe" && e.type !== "swf") {
                   e.width = "auto";
                   e.height = "auto"
               }
           if (e.modal) {
                   e.overlayShow = true;
                   e.hideOnOverlayClick = false;
                   e.hideOnContentClick = false;
                   e.enableEscapeButton = false;
                   e.showCloseButton = false
               }
           if (b.isFunction(e.onStart)) if (e.onStart(q, p, e) === false) {
                   h = false;
                   return
               }
           m.css("padding", 20 + e.padding + e.margin);
           b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change", function () {
                   b(this).replaceWith(i.children())
               });
           switch (f) {
               case "html":
                   m.html(e.content);
                   F();
                   break;
               case "inline":
                   b('<div class="fancybox-inline-tmp" />').hide().insertBefore(b(a)).bind("fancybox-cleanup", function () {
                       b(this).replaceWith(i.children())
                   }).bind("fancybox-cancel", function () {
                       b(this).replaceWith(m.children())
                   });
                   b(a).appendTo(m);
                   F();
                   break;
               case "image":
                   h = false;
                   b.fancybox.showActivity();
                   s = new Image;
                   s.onerror = function () {
                       P()
                   };
                   s.onload = function () {
                       s.onerror = null;
                       s.onload = null;
                       Z()
                   };
                   s.src = d;
                   break;
               case "swf":
                   t = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + e.width + '" height="' + e.height + '"><param name="movie" value="' + d + '"></param>';
                   w = "";
                   b.each(e.swf, function (r, R) {
                       t += '<param name="' + r + '" value="' + R + '"></param>';
                       w += " " + r + '="' + R + '"'
                   });
                   t += '<embed src="' + d + '" type="application/x-shockwave-flash" width="' + e.width + '" height="' + e.height + '"' + w + "></embed></object>";
                   m.html(t);
                   F();
                   break;
               case "ajax":
                   a = d.split("#", 2);
                   f = e.ajax.data || {};
                   if (a.length > 1) {
                       d = a[0];
                       if (typeof f == "string") f += "&selector=" + a[1];
                       else f.selector = a[1]
                   }
                   h = false;
                   b.fancybox.showActivity();
                   E = b.ajax(b.extend(e.ajax, {
                       url: d,
                       data: f,
                       error: P,
                       success: function (r) {
                           if (E.status == 200) {
                               m.html(r);
                               F()
                           }
                       }
                   }));
                   break;
               case "iframe":
                   b('<iframe id="fancybox-frame" name="fancybox-frame' + (new Date).getTime() + '" frameborder="0" hspace="0" scrolling="' + e.scrolling + '" src="' + e.href + '"></iframe>').appendTo(m);
                   N();
                   break
               }
       },
       $ = function () {
           if (u.is(":visible")) {
               b("div", u).css("top", I * -40 + "px");
               I = (I + 1) % 12
           } else clearInterval(H)
       },
       aa = function () {
           if (!b("#fancybox-wrap").length) {
               b("body").append(m = b('<div id="fancybox-tmp"></div>'), u = b('<div id="fancybox-loading"><div></div></div>'), x = b('<div id="fancybox-overlay"></div>'), g = b('<div id="fancybox-wrap"></div>'));
               if (!b.support.opacity) {
                   g.addClass("fancybox-ie");
                   u.addClass("fancybox-ie")
               }
               D = b('<div id="fancybox-outer"></div>').append('<div class="fancy-bg" id="fancy-bg-n"></div><div class="fancy-bg" id="fancy-bg-ne"></div><div class="fancy-bg" id="fancy-bg-e"></div><div class="fancy-bg" id="fancy-bg-se"></div><div class="fancy-bg" id="fancy-bg-s"></div><div class="fancy-bg" id="fancy-bg-sw"></div><div class="fancy-bg" id="fancy-bg-w"></div><div class="fancy-bg" id="fancy-bg-nw"></div>').appendTo(g);
               D.append(i = b('<div id="fancybox-inner"></div>'), z = b('<a id="fancybox-close"></a>'), A = b('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'), B = b('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>'));
               z.click(b.fancybox.close);
               u.click(b.fancybox.cancel);
               A.click(function (a) {
                   a.preventDefault();
                   b.fancybox.prev()
               });
               B.click(function (a) {
                   a.preventDefault();
                   b.fancybox.next()
               });
               if (O) {
                   x.get(0).style.setExpression("height", "document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px'");
                   u.get(0).style.setExpression("top", "(-20 + (document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop )) + 'px'");
                   D.prepend('<iframe id="fancybox-hide-sel-frame" src="javascript:\'\';" scrolling="no" frameborder="0" ></iframe>')
               }
           }
       };
   b.fn.fancybox = function (a) {
           b(this).data("fancybox", b.extend({}, a, b.metadata ? b(this).metadata() : {})).unbind("click.fb").bind("click.fb", function (d) {
               d.preventDefault();
               if (!h) {
                   h = true;
                   b(this).blur();
                   q = [];
                   p = 0;
                   d = b(this).attr("rel") || "";
                   if (!d || d == "" || d === "nofollow") q.push(this);
                   else {
                       q = b("a[rel=" + d + "], area[rel=" + d + "]");
                       p = q.index(this)
                   }
                   C();
                   return false
               }
           });
           return this
       };
   b.fancybox = function (a, d) {
           if (!h) {
               h = true;
               d = typeof d !== "undefined" ? d : {};
               q = [];
               p = d.index || 0;
               if (b.isArray(a)) {
                   for (var f = 0, o = a.length; f < o; f++) if (typeof a[f] == "object") b(a[f]).data("fancybox", b.extend({}, d, a[f]));
                   else a[f] = b({}).data("fancybox", b.extend({
                       content: a[f]
                   }, d));
                   q = jQuery.merge(q, a)
               } else {
                   if (typeof a == "object") b(a).data("fancybox", b.extend({}, d, a));
                   else a = b({}).data("fancybox", b.extend({
                       content: a
                   }, d));
                   q.push(a)
               }
               if (p > q.length || p < 0) p = 0;
               C()
           }
       };
   b.fancybox.showActivity = function () {
           clearInterval(H);
           u.show();
           H = setInterval($, 66)
       };
   b.fancybox.hideActivity = function () {
           u.hide()
       };
   b.fancybox.next = function () {
           return b.fancybox.pos(n + 1)
       };
   b.fancybox.prev = function () {
           return b.fancybox.pos(n - 1)
       };
   b.fancybox.pos = function (a) {
           if (!h) {
               a = parseInt(a, 10);
               if (a > -1 && j.length > a) {
                   p = a;
                   C()
               }
               if (c.cyclic && j.length > 1 && a < 0) {
                   p = j.length - 1;
                   C()
               }
               if (c.cyclic && j.length > 1 && a >= j.length) {
                   p = 0;
                   C()
               }
           }
       };
   b.fancybox.cancel = function () {
           if (!h) {
               h = true;
               b.event.trigger("fancybox-cancel");
               J();
               e && b.isFunction(e.onCancel) && e.onCancel(q, p, e);
               h = false
           }
       };
   b.fancybox.close = function () {
           function a() {
               x.fadeOut("fast");
               g.hide();
               b.event.trigger("fancybox-cleanup");
               i.empty();
               b.isFunction(c.onClosed) && c.onClosed(j, n, c);
               j = e = [];
               n = p = 0;
               c = e = {};
               h = false
           }
           if (!(h || g.is(":hidden"))) {
               h = true;
               if (c && b.isFunction(c.onCleanup)) if (c.onCleanup(j, n, c) === false) {
                   h = false;
                   return
               }
               J();
               b(z.add(A).add(B)).hide();
               b("#fancybox-title").remove();
               g.add(i).add(x).unbind();
               b(window).unbind("resize.fb scroll.fb");
               b(document).unbind("keydown.fb");
               i.css("overflow", "hidden");
               if (c.transitionOut == "elastic") {
                   k = Q();
                   var d = g.position();
                   l = {
                       top: d.top,
                       left: d.left,
                       width: g.width(),
                       height: g.height()
                   };
                   if (c.opacity) l.opacity = 1;
                   y.prop = 1;
                   b(y).animate({
                       prop: 0
                   }, {
                       duration: c.speedOut,
                       easing: c.easingOut,
                       step: M,
                       complete: a
                   })
               } else g.fadeOut(c.transitionOut == "none" ? 0 : c.speedOut, a)
           }
       };
   b.fancybox.resize = function () {
           var a, d;
           if (!(h || g.is(":hidden"))) {
               h = true;
               a = i.wrapInner("<div style='overflow:auto'></div>").children();
               d = a.height();
               g.css({
                   height: d + c.padding * 2 + v
               });
               i.css({
                   height: d
               });
               a.replaceWith(a.children());
               b.fancybox.center()
           }
       };
   b.fancybox.center = function () {
           h = true;
           var a = K(),
               d = c.margin,
               f = {};
           f.top = a[3] + (a[1] - (g.height() - v + 40)) * 0.5;
           f.left = a[2] + (a[0] - (g.width() + 40)) * 0.5;
           f.top = Math.max(a[3] + d, f.top);
           f.left = Math.max(a[2] + d, f.left);
           g.css(f);
           h = false
       };
   b.fn.fancybox.defaults = {
           padding: 10,
           margin: 20,
           opacity: false,
           modal: false,
           cyclic: false,
           scrolling: "auto",
           width: 560,
           height: 340,
           autoScale: true,
           autoDimensions: true,
           centerOnScroll: false,
           ajax: {},
           swf: {
               wmode: "transparent"
           },
           hideOnOverlayClick: true,
           hideOnContentClick: false,
           overlayShow: true,
           overlayOpacity: 0.3,
           overlayColor: "#666",
           titleShow: true,
           titlePosition: "outside",
           titleFormat: null,
           transitionIn: "fade",
           transitionOut: "fade",
           speedIn: 300,
           speedOut: 300,
           changeSpeed: 300,
           changeFade: "fast",
           easingIn: "swing",
           easingOut: "swing",
           showCloseButton: true,
           showNavArrows: true,
           enableEscapeButton: true,
           onStart: null,
           onCancel: null,
           onComplete: null,
           onCleanup: null,
           onClosed: null
       };
   b(document).ready(function () {
           aa()
       })
})(jQuery);

 

 

 

 

>
jquery.mousewheel-3.0.2.pack.js

/*! Copyright (c) 2009 Brandon Aaron (http://brandonaaron.net)
* Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
* and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
* Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
* Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
*
* Version: 3.0.2
* 
* Requires: 1.2.2+
*/

(function (B) {
   function d(a) {
       var f = [].slice.call(arguments, 1),
           e = 0;
       a = b.event.fix(a || window.event);
       a.type = "mousewheel";
       if (a.wheelDelta) e = a.wheelDelta / 120;
       if (a.detail) e = -a.detail / 3;
       f.unshift(a, e);
       return b.event.handle.apply(this, f)
   }
   var c = ["DOMMouseScroll", "mousewheel"];
   b.event.special.mousewheel = {
       setup: function () {
           if (this.addEventListener) for (var a = c.length; a;) this.addEventListener(c[--a], d, false);
           else this.onmousewheel = d
       },
       teardown: function () {
           if (this.removeEventListener) for (var a = c.length; a;) this.removeEventListener(c[--a], d, false);
           else this.onmousewheel = null
       }
   };
   b.fn.extend({
       mousewheel: function (a) {
           return a ? this.bind("mousewheel", a) : this.trigger("mousewheel")
       },
       unmousewheel: function (a) {
           return this.unbind("mousewheel", a)
       }
   })
})(jQuery);

 

Δημοσ.
Δοκίμασε να κάνεις paste τον κώδικα των "unformatted" *.js εδώ και πάτα Beautify.

 

Επίσης, εξήγησε λίγο καλύτερα τι παίζει με τις σελίδες.

α) Κάνεις click το link και ανοίγει το fancybox.

β) Κάνεις ότι είναι να κάνεις μέσα στο fancybox.

γ) Η επαλήθευση γίνεται μέσα στο fancybox?

δ) Φορτώνει νέα σελίδα (πίσω από το fancybox) και παραμένει το fancybox ανοιχτό (γίνεται αυτό?)? Μέσα στο fancybox φαίνεται το "thank you και τα λοιπά"?

 

Δοκίμασε να χρησιμοποιήσεις αυτό το ακόλουθο στην τελευταία σελίδα :

><script type="text/javascript" > 
$(document).ready(function() {
parent.$.fn.fancybox.close();
}
</script>

ή

><script type="text/javascript" > 
$(document).ready(function() {
$.fn.fancybox.close();
}
</script>

 

 

Καλημέρα, σορρυ που δεν απαντησα χτες αλλα λογω δουλειας δεν προλαβα...

Λοιπον, ναι ολα γινονται μεσα στο fancybox...και το validation κ το "thank you".

Η πισω σελιδα παραμενει σταθερη...μονο οι σελιδες μεσα στο fancybox αλλαζουν...

 

Τα δυο scriptακια δεν λειτουργησαν δυστυχως...

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...