亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jquery.js

?? 通過jquery組件實(shí)現(xiàn)各種各樣的樹形菜單
?? JS
?? 第 1 頁 / 共 5 頁
字號(hào):
					// events handler returns false					if ( !jQuery.event.special[type] || jQuery.event.special[type].setup.call(elem) === false ) {						// Bind the global event handler to the element						if (elem.addEventListener)							elem.addEventListener(type, handle, false);						else if (elem.attachEvent)							elem.attachEvent("on" + type, handle);					}				}				// Add the function to the element's handler list				handlers[handler.guid] = handler;				// Keep track of which events have been used, for global triggering				jQuery.event.global[type] = true;			});	},	guid: 1,	global: {},	// Detach an event or set of events from an element	remove: function(elem, types, handler) {		// don't do events on text and comment nodes		if ( elem.nodeType == 3 || elem.nodeType == 8 )			return;		var events = jQuery.data(elem, "events"), ret, index;		if ( events ) {			// Unbind all events for the element			if ( types == undefined )				for ( var type in events )					this.remove( elem, type );			else {				// types is actually an event object here				if ( types.type ) {					handler = types.handler;					types = types.type;				}								// Handle multiple events seperated by a space				// jQuery(...).unbind("mouseover mouseout", fn);				jQuery.each(types.split(/\s+/), function(index, type){					// Namespaced event handlers					var parts = type.split(".");					type = parts[0];										if ( events[type] ) {						// remove the given handler for the given type						if ( handler )							delete events[type][handler.guid];									// remove all handlers for the given type						else							for ( handler in events[type] )								// Handle the removal of namespaced events								if ( !parts[1] || events[type][handler].type == parts[1] )									delete events[type][handler];						// remove generic event handler if no more handlers exist						for ( ret in events[type] ) break;						if ( !ret ) {							if ( !jQuery.event.special[type] || jQuery.event.special[type].teardown.call(elem) === false ) {								if (elem.removeEventListener)									elem.removeEventListener(type, jQuery.data(elem, "handle"), false);								else if (elem.detachEvent)									elem.detachEvent("on" + type, jQuery.data(elem, "handle"));							}							ret = null;							delete events[type];						}					}				});			}			// Remove the expando if it's no longer used			for ( ret in events ) break;			if ( !ret ) {				jQuery.removeData( elem, "events" );				jQuery.removeData( elem, "handle" );			}		}	},	trigger: function(type, data, elem, donative, extra) {		// Clone the incoming data, if any		data = jQuery.makeArray(data || []);		// Handle a global trigger		if ( !elem ) {			// Only trigger if we've ever bound an event for it			if ( this.global[type] )				jQuery("*").add([window, document]).trigger(type, data);		// Handle triggering a single element		} else {			// don't do events on text and comment nodes			if ( elem.nodeType == 3 || elem.nodeType == 8 )				return undefined;			var val, ret, fn = jQuery.isFunction( elem[ type ] || null ),				// Check to see if we need to provide a fake event, or not				event = !data[0] || !data[0].preventDefault;						// Pass along a fake event			if ( event )				data.unshift( this.fix({ type: type, target: elem }) );			// Enforce the right trigger type			data[0].type = type;			// Trigger the event			if ( jQuery.isFunction( jQuery.data(elem, "handle") ) )				val = jQuery.data(elem, "handle").apply( elem, data );			// Handle triggering native .onfoo handlers			if ( !fn && elem["on"+type] && elem["on"+type].apply( elem, data ) === false )				val = false;			// Extra functions don't get the custom event object			if ( event )				data.shift();			// Handle triggering of extra function			if ( extra && jQuery.isFunction( extra ) ) {				// call the extra function and tack the current return value on the end for possible inspection				var ret = extra.apply( elem, data.concat( val ) );				// if anything is returned, give it precedence and have it overwrite the previous value				if (ret !== undefined)					val = ret;			}			// Trigger the native events (except for clicks on links)			if ( fn && donative !== false && val !== false && !(jQuery.nodeName(elem, 'a') && type == "click") ) {				this.triggered = true;				try {					elem[ type ]();				// prevent IE from throwing an error for some hidden elements				} catch (e) {}			}			this.triggered = false;		}		return val;	},	handle: function(event) {		// returned undefined or false		var val;		// Empty object is for triggered events with no data		event = jQuery.event.fix( event || window.event || {} ); 		// Namespaced event handlers		var parts = event.type.split(".");		event.type = parts[0];		var handlers = jQuery.data(this, "events") && jQuery.data(this, "events")[event.type], args = Array.prototype.slice.call( arguments, 1 );		args.unshift( event );		for ( var j in handlers ) {			var handler = handlers[j];			// Pass in a reference to the handler function itself			// So that we can later remove it			args[0].handler = handler;			args[0].data = handler.data;			// Filter the functions by class			if ( !parts[1] || handler.type == parts[1] ) {				var ret = handler.apply( this, args );				if ( val !== false )					val = ret;				if ( ret === false ) {					event.preventDefault();					event.stopPropagation();				}			}		}		// Clean up added properties in IE to prevent memory leak		if (jQuery.browser.msie)			event.target = event.preventDefault = event.stopPropagation =				event.handler = event.data = null;		return val;	},	fix: function(event) {		// Short-circuit if the event has already been fixed by jQuery.event.fix		if ( event[ expando ] )			return event;					// store a copy of the original event object 		// and clone to set read-only properties		var originalEvent = event;		event = jQuery.extend({}, originalEvent);				// Mark the event as fixed by jQuery.event.fix		event[ expando ] = true;				// add preventDefault and stopPropagation since 		// they will not work on the clone		event.preventDefault = function() {			// if preventDefault exists run it on the original event			if (originalEvent.preventDefault)				originalEvent.preventDefault();			// otherwise set the returnValue property of the original event to false (IE)			originalEvent.returnValue = false;		};		event.stopPropagation = function() {			// if stopPropagation exists run it on the original event			if (originalEvent.stopPropagation)				originalEvent.stopPropagation();			// otherwise set the cancelBubble property of the original event to true (IE)			originalEvent.cancelBubble = true;		};				// Fix target property, if necessary		if ( !event.target )			event.target = event.srcElement || document; // Fixes #1925 where srcElement might not be defined either						// check if target is a textnode (safari)		if ( event.target.nodeType == 3 )			event.target = originalEvent.target.parentNode;		// Add relatedTarget, if necessary		if ( !event.relatedTarget && event.fromElement )			event.relatedTarget = event.fromElement == event.target ? event.toElement : event.fromElement;		// Calculate pageX/Y if missing and clientX/Y available		if ( event.pageX == null && event.clientX != null ) {			var doc = document.documentElement, body = document.body;			event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc.clientLeft || 0);			event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc.clientTop || 0);		}					// Add which for key events		if ( !event.which && (event.charCode || event.keyCode) )			event.which = event.charCode || event.keyCode;				// Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs)		if ( !event.metaKey && event.ctrlKey )			event.metaKey = event.ctrlKey;		// Add which for click: 1 == left; 2 == middle; 3 == right		// Note: button is not normalized, so don't use it		if ( !event.which && event.button )			event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) ));					return event;	},		special: {		ready: {			setup: function() {				// Make sure the ready event is setup				bindReady();				return;			},						teardown: function() { return; }		},				mouseenter: {			setup: function() {				if ( jQuery.browser.msie ) return false;				jQuery(this).bind("mouseover", jQuery.event.special.mouseenter.handler);				return true;			},					teardown: function() {				if ( jQuery.browser.msie ) return false;				jQuery(this).unbind("mouseover", jQuery.event.special.mouseenter.handler);				return true;			},						handler: function(event) {				// If we actually just moused on to a sub-element, ignore it				if ( withinElement(event, this) ) return true;				// Execute the right handlers by setting the event type to mouseenter				arguments[0].type = "mouseenter";				return jQuery.event.handle.apply(this, arguments);			}		},			mouseleave: {			setup: function() {				if ( jQuery.browser.msie ) return false;				jQuery(this).bind("mouseout", jQuery.event.special.mouseleave.handler);				return true;			},					teardown: function() {				if ( jQuery.browser.msie ) return false;				jQuery(this).unbind("mouseout", jQuery.event.special.mouseleave.handler);				return true;			},						handler: function(event) {				// If we actually just moused on to a sub-element, ignore it				if ( withinElement(event, this) ) return true;				// Execute the right handlers by setting the event type to mouseleave				arguments[0].type = "mouseleave";				return jQuery.event.handle.apply(this, arguments);			}		}	}};jQuery.fn.extend({	bind: function( type, data, fn ) {		return type == "unload" ? this.one(type, data, fn) : this.each(function(){			jQuery.event.add( this, type, fn || data, fn && data );		});	},		one: function( type, data, fn ) {		return this.each(function(){			jQuery.event.add( this, type, function(event) {				jQuery(this).unbind(event);				return (fn || data).apply( this, arguments);			}, fn && data);		});	},	unbind: function( type, fn ) {		return this.each(function(){			jQuery.event.remove( this, type, fn );		});	},	trigger: function( type, data, fn ) {		return this.each(function(){			jQuery.event.trigger( type, data, this, true, fn );		});	},	triggerHandler: function( type, data, fn ) {		if ( this[0] )			return jQuery.event.trigger( type, data, this[0], false, fn );		return undefined;	},	toggle: function() {		// Save reference to arguments for access in closure		var args = arguments;		return this.click(function(event) {			// Figure out which function to execute			this.lastToggle = 0 == this.lastToggle ? 1 : 0;						// Make sure that clicks stop			event.preventDefault();						// and execute the function			return args[this.lastToggle].apply( this, arguments ) || false;		});	},	hover: function(fnOver, fnOut) {		return this.bind('mouseenter', fnOver).bind('mouseleave', fnOut);	},		ready: function(fn) {		// Attach the listeners		bindReady();		// If the DOM is already ready		if ( jQuery.isReady )			// Execute the function immediately			fn.call( document, jQuery );					// Otherwise, remember the function for later		else			// Add the function to the wait list			jQuery.readyList.push( function() { return fn.call(this, jQuery); } );			return this;	}});jQuery.extend({	isReady: false,	readyList: [],	// Handle when the DOM is ready	ready: function() {		// Make sure that the DOM is not already loaded		if ( !jQuery.isReady ) {			// Remember that the DOM is ready			jQuery.isReady = true;						// If there are functions bound, to execute			if ( jQuery.readyList ) {				// Execute all of them				jQuery.each( jQuery.readyList, function(){					this.apply( document );				});								// Reset the list of functions				jQuery.readyList = null;			}					// Trigger any bound ready events			$(document).triggerHandler("ready");		}	}});var readyBound = false;function bindReady(){	if ( readyBound ) return;	readyBound = true;	// Mozilla, Opera (see further below for it) and webkit nightlies currently support this event	if ( document.addEventListener && !jQuery.browser.opera)		// Use the handy event callback		document.addEventListener( "DOMContentLoaded", jQuery.ready, false );		// If IE is used and is not in a frame	// Continually check to see if the document is ready	if ( jQuery.browser.msie && window == top ) (function(){		if (jQuery.isReady) return;		try {			// If IE is used, use the trick by Diego Perini			// http://javascript.nwbox.com/IEContentLoaded/			document.documentElement.doScroll("left");		} catch( error ) {			setTimeout( arguments.callee, 0 );			return;		}		// and execute any waiting functions		jQuery.ready();	})();	if ( jQuery.browser.opera )		document.addEventListener( "DOMContentLoaded", function () {			if (jQuery.isReady) return;			for (var i = 0; i < document.styleSheets.length; i++)				if (document.styleSheets[i].disabled) {					setTimeout( arguments.callee, 0 );					return;				}			// and execute any waiting functions			jQuery.ready();		}, false);	if ( jQuery.browser.safari ) {		var numStyles;		(function(){			if (jQuery.isReady) return;			if ( document.readyState != "loaded" && document.readyState != "complete" ) {				setTimeout( arguments.callee, 0 );				return;			}			if ( numStyles === undefined )				numStyles = jQuery("style, link[rel=stylesheet]").length;			if ( document.styleSheets.length != numStyles ) {				setTimeout( arguments.callee, 0 );				return;			}			// and execute any waitin

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲激情中文1区| 五月天中文字幕一区二区| 色天使久久综合网天天| 麻豆精品国产传媒mv男同 | 久久久久久久久一| 欧美三区在线观看| av中文字幕不卡| 国产主播一区二区三区| 婷婷久久综合九色国产成人 | 中文字幕一区二区三区不卡 | 亚洲欧美精品午睡沙发| 久久尤物电影视频在线观看| 欧美日本一区二区| 91在线视频官网| 福利电影一区二区| 经典三级一区二区| 日韩电影免费一区| 亚洲主播在线播放| 亚洲人123区| 欧美高清在线一区| 国产区在线观看成人精品| 日韩三级中文字幕| 91.com在线观看| 欧美色大人视频| 色综合久久99| 91蝌蚪porny九色| 成年人午夜久久久| 国产91精品一区二区麻豆网站| 琪琪一区二区三区| 美腿丝袜亚洲三区| 日本不卡高清视频| 蜜桃av一区二区三区电影| 天天免费综合色| 午夜激情一区二区三区| 亚洲1区2区3区视频| 亚洲一二三专区| 亚洲成人在线免费| 午夜电影网亚洲视频| 亚洲一区二区在线观看视频 | 91麻豆精品国产91久久久使用方法 | www.欧美色图| youjizz国产精品| 99视频在线观看一区三区| va亚洲va日韩不卡在线观看| 成年人国产精品| 色婷婷久久久综合中文字幕| 91日韩精品一区| 在线观看区一区二| 欧美日韩不卡在线| 日韩色视频在线观看| 精品播放一区二区| 中文字幕av不卡| 亚洲视频免费在线| 亚洲成人综合网站| 美国av一区二区| 国产一区二区按摩在线观看| 成人黄色大片在线观看| 一本大道久久a久久综合婷婷| 色www精品视频在线观看| 欧美精品乱人伦久久久久久| 日韩欧美色电影| 欧美韩国日本不卡| 一区二区三区国产豹纹内裤在线| 一区二区三区国产| 青椒成人免费视频| jlzzjlzz国产精品久久| 欧洲精品中文字幕| 亚洲日本护士毛茸茸| 亚洲一区二区三区四区中文字幕| 男人的天堂亚洲一区| 丁香另类激情小说| 欧美日韩在线播放| 久久网这里都是精品| 亚洲男人天堂一区| 久久疯狂做爰流白浆xx| 99久久伊人网影院| 在线播放日韩导航| 国产精品天美传媒沈樵| 婷婷中文字幕一区三区| 成熟亚洲日本毛茸茸凸凹| 欧美日韩激情在线| 亚洲国产高清aⅴ视频| 午夜精品久久久久久不卡8050| 狠狠色狠狠色合久久伊人| 色香蕉久久蜜桃| 久久伊人蜜桃av一区二区| 一区二区三区中文在线| 久久99国产精品免费网站| 94-欧美-setu| 26uuu久久天堂性欧美| 亚洲精品中文在线影院| 国产乱子伦一区二区三区国色天香 | 亚洲成人福利片| 成人美女视频在线看| 欧美欧美欧美欧美首页| 国产精品成人在线观看| 激情小说亚洲一区| 欧美日韩一卡二卡三卡| 国产精品国产三级国产aⅴ原创| 日本va欧美va瓶| 欧美性大战久久久久久久蜜臀| 久久久激情视频| 麻豆一区二区三| 欧美日韩精品欧美日韩精品| 亚洲欧洲在线观看av| 国产一区欧美一区| 91精品国产综合久久福利| 亚洲精品免费在线观看| 成人一区二区三区| 精品国精品国产| 日韩av在线发布| 在线看国产一区| 亚洲视频一区在线观看| 大陆成人av片| 久久久久久电影| 久久电影国产免费久久电影 | 国产精品网站在线| 国产一区二区在线影院| 91精品欧美综合在线观看最新| 亚洲精品久久久蜜桃| 99久久免费精品高清特色大片| 久久久777精品电影网影网| 麻豆国产精品一区二区三区| 91精品中文字幕一区二区三区| 亚洲一区二区三区自拍| 色婷婷av一区二区三区软件 | 另类调教123区| 日韩三级免费观看| 青青草成人在线观看| 91精品国产一区二区三区蜜臀 | 午夜视频在线观看一区二区| 91福利国产精品| 亚洲乱码国产乱码精品精的特点| 99热这里都是精品| 亚洲少妇最新在线视频| 91麻豆国产精品久久| 樱花影视一区二区| 欧美亚日韩国产aⅴ精品中极品| 亚洲制服丝袜在线| 欧美区在线观看| 美腿丝袜一区二区三区| 精品99一区二区三区| 国产伦精一区二区三区| 国产精品人妖ts系列视频| av资源站一区| 亚洲图片有声小说| 3d成人动漫网站| 国产在线国偷精品免费看| 国产夜色精品一区二区av| 不卡的av网站| 亚洲九九爱视频| 欧美久久婷婷综合色| 美女视频第一区二区三区免费观看网站| 欧美一区二区三区在线观看视频 | 日韩中文字幕麻豆| 日韩欧美中文字幕制服| 国产精品18久久久久久久久| 国产精品久久久久一区二区三区共| 成人a级免费电影| 亚洲一区二区三区四区五区中文| 欧美日韩第一区日日骚| 国产在线精品不卡| 亚洲欧美另类在线| 91精品国产综合久久香蕉的特点 | 激情深爱一区二区| 国产精品久久毛片av大全日韩| 色婷婷久久综合| 免费看精品久久片| 中文av一区二区| 欧美日韩视频一区二区| 国内外精品视频| 一区二区欧美精品| 精品国产123| 99riav久久精品riav| 免费国产亚洲视频| 亚洲色图一区二区| 精品久久一区二区| 91激情在线视频| 国内久久婷婷综合| 亚洲国产日韩在线一区模特 | 91精品国产综合久久精品麻豆 | 欧美日韩视频一区二区| 国产精品白丝av| 亚洲v精品v日韩v欧美v专区| 欧美激情中文字幕一区二区| 欧美亚洲一区二区在线| 国产电影一区二区三区| 亚洲成人黄色小说| 国产精品不卡视频| 日韩欧美另类在线| 欧美性生活一区| 国产成人在线视频网站| 亚洲大尺度视频在线观看| 国产精品色哟哟| 欧美xingq一区二区| 在线观看日韩高清av| 成人久久视频在线观看| 久久国产人妖系列| 亚洲国产精品久久久久秋霞影院| 国产精品视频你懂的|