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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fcktools_gecko.js

?? OA.....其他人不需帳號就可自由下載此源碼其他人不需帳號就可自由下載此源碼
?? JS
字號:
?/*
 * FCKeditor - The text editor for Internet - http://www.fckeditor.net
 * Copyright (C) 2003-2007 Frederico Caldeira Knabben
 *
 * == BEGIN LICENSE ==
 *
 * Licensed under the terms of any of the following licenses at your
 * choice:
 *
 *  - GNU General Public License Version 2 or later (the "GPL")
 *    http://www.gnu.org/licenses/gpl.html
 *
 *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
 *    http://www.gnu.org/licenses/lgpl.html
 *
 *  - Mozilla Public License Version 1.1 or later (the "MPL")
 *    http://www.mozilla.org/MPL/MPL-1.1.html
 *
 * == END LICENSE ==
 *
 * Utility functions. (Gecko version).
 */

FCKTools.CancelEvent = function( e )
{
	if ( e )
		e.preventDefault() ;
}

FCKTools.DisableSelection = function( element )
{
	if ( FCKBrowserInfo.IsGecko )
		element.style.MozUserSelect	= 'none' ;	// Gecko only.
	else
		element.style.userSelect	= 'none' ;	// CSS3 (not supported yet).
}

// Appends a CSS file to a document.
FCKTools._AppendStyleSheet = function( documentElement, cssFileUrl )
{
	var e = documentElement.createElement( 'LINK' ) ;
	e.rel	= 'stylesheet' ;
	e.type	= 'text/css' ;
	e.href	= cssFileUrl ;
	documentElement.getElementsByTagName("HEAD")[0].appendChild( e ) ;
	return e ;
}

// Appends a CSS style string to a document.
FCKTools._AppendStyleString = function( documentElement, cssStyles )
{
	var e = documentElement.createElement( "STYLE" ) ;
	e.appendChild( documentElement.createTextNode( cssStyles ) ) ;
	documentElement.getElementsByTagName( "HEAD" )[0].appendChild( e ) ;
	return e ;
}

// Removes all attributes and values from the element.
FCKTools.ClearElementAttributes = function( element )
{
	// Loop throw all attributes in the element
	for ( var i = 0 ; i < element.attributes.length ; i++ )
	{
		// Remove the element by name.
		element.removeAttribute( element.attributes[i].name, 0 ) ;	// 0 : Case Insensitive
	}
}

// Returns an Array of strings with all defined in the elements inside another element.
FCKTools.GetAllChildrenIds = function( parentElement )
{
	// Create the array that will hold all Ids.
	var aIds = new Array() ;

	// Define a recursive function that search for the Ids.
	var fGetIds = function( parent )
	{
		for ( var i = 0 ; i < parent.childNodes.length ; i++ )
		{
			var sId = parent.childNodes[i].id ;

			// Check if the Id is defined for the element.
			if ( sId && sId.length > 0 ) aIds[ aIds.length ] = sId ;

			// Recursive call.
			fGetIds( parent.childNodes[i] ) ;
		}
	}

	// Start the recursive calls.
	fGetIds( parentElement ) ;

	return aIds ;
}

// Replaces a tag with its contents. For example "<span>My <b>tag</b></span>"
// will be replaced with "My <b>tag</b>".
FCKTools.RemoveOuterTags = function( e )
{
	var oFragment = e.ownerDocument.createDocumentFragment() ;

	for ( var i = 0 ; i < e.childNodes.length ; i++ )
		oFragment.appendChild( e.childNodes[i].cloneNode(true) ) ;

	e.parentNode.replaceChild( oFragment, e ) ;
}

FCKTools.CreateXmlObject = function( object )
{
	switch ( object )
	{
		case 'XmlHttp' :
			return new XMLHttpRequest() ;
		case 'DOMDocument' :
			return document.implementation.createDocument( '', '', null ) ;
	}
	return null ;
}

FCKTools.GetScrollPosition = function( relativeWindow )
{
	return { X : relativeWindow.pageXOffset, Y : relativeWindow.pageYOffset } ;
}

FCKTools.AddEventListener = function( sourceObject, eventName, listener )
{
	sourceObject.addEventListener( eventName, listener, false ) ;
}

FCKTools.RemoveEventListener = function( sourceObject, eventName, listener )
{
	sourceObject.removeEventListener( eventName, listener, false ) ;
}

// Listeners attached with this function cannot be detached.
FCKTools.AddEventListenerEx = function( sourceObject, eventName, listener, paramsArray )
{
	sourceObject.addEventListener(
		eventName,
		function( e )
		{
			listener.apply( sourceObject, [ e ].concat( paramsArray || [] ) ) ;
		},
		false
	) ;
}

// Returns and object with the "Width" and "Height" properties.
FCKTools.GetViewPaneSize = function( win )
{
	return { Width : win.innerWidth, Height : win.innerHeight } ;
}

FCKTools.SaveStyles = function( element )
{
	var data = FCKTools.ProtectFormStyles( element ) ;

	var oSavedStyles = new Object() ;

	if ( element.className.length > 0 )
	{
		oSavedStyles.Class = element.className ;
		element.className = '' ;
	}

	var sInlineStyle = element.getAttribute( 'style' ) ;

	if ( sInlineStyle && sInlineStyle.length > 0 )
	{
		oSavedStyles.Inline = sInlineStyle ;
		element.setAttribute( 'style', '', 0 ) ;	// 0 : Case Insensitive
	}

	FCKTools.RestoreFormStyles( element, data ) ;
	return oSavedStyles ;
}

FCKTools.RestoreStyles = function( element, savedStyles )
{
	var data = FCKTools.ProtectFormStyles( element ) ;
	element.className = savedStyles.Class || '' ;

	if ( savedStyles.Inline )
		element.setAttribute( 'style', savedStyles.Inline, 0 ) ;	// 0 : Case Insensitive
	else
		element.removeAttribute( 'style', 0 ) ;
	FCKTools.RestoreFormStyles( element, data ) ;
}

FCKTools.RegisterDollarFunction = function( targetWindow )
{
	targetWindow.$ = function( id )
	{
		return this.document.getElementById( id ) ;
	} ;
}

FCKTools.AppendElement = function( target, elementName )
{
	return target.appendChild( target.ownerDocument.createElement( elementName ) ) ;
}

// Get the coordinates of an element.
//		@el : The element to get the position.
//		@relativeWindow: The window to which we want the coordinates relative to.
FCKTools.GetElementPosition = function( el, relativeWindow )
{
	// Initializes the Coordinates object that will be returned by the function.
	var c = { X:0, Y:0 } ;

	var oWindow = relativeWindow || window ;

	var oOwnerWindow = FCKTools.GetElementWindow( el ) ;

	var previousElement = null ;
	// Loop throw the offset chain.
	while ( el )
	{
		var sPosition = oOwnerWindow.getComputedStyle(el, '').position ;

		// Check for non "static" elements.
		// 'FCKConfig.FloatingPanelsZIndex' -- Submenus are under a positioned IFRAME.
		if ( sPosition && sPosition != 'static' && el.style.zIndex != FCKConfig.FloatingPanelsZIndex )
			break ;

		/*
		FCKDebug.Output( el.tagName + ":" + "offset=" + el.offsetLeft + "," + el.offsetTop + "  " 
				+ "scroll=" + el.scrollLeft + "," + el.scrollTop ) ;
		*/

		c.X += el.offsetLeft - el.scrollLeft ;
		c.Y += el.offsetTop - el.scrollTop  ;

		// Backtrack due to offsetParent's calculation by the browser ignores scrollLeft and scrollTop.
		// Backtracking is not needed for Opera
		if ( ! FCKBrowserInfo.IsOpera )
		{
			var scrollElement = previousElement ;
			while ( scrollElement && scrollElement != el )
			{
				c.X -= scrollElement.scrollLeft ;
				c.Y -= scrollElement.scrollTop ;
				scrollElement = scrollElement.parentNode ;
			}
		}

		previousElement = el ;
		if ( el.offsetParent )
			el = el.offsetParent ;
		else
		{
			if ( oOwnerWindow != oWindow )
			{
				el = oOwnerWindow.frameElement ;
				previousElement = null ;
				if ( el )
					oOwnerWindow = FCKTools.GetElementWindow( el ) ;
			}
			else
			{
				c.X += el.scrollLeft ;
				c.Y += el.scrollTop  ;
				break ;
			}
		}
	}

	// Return the Coordinates object
	return c ;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
正在播放亚洲一区| 欧洲中文字幕精品| 日韩黄色小视频| 亚洲国产va精品久久久不卡综合 | 欧美日韩精品一区二区三区| 99精品热视频| 在线亚洲+欧美+日本专区| 一本色道久久综合亚洲aⅴ蜜桃 | 亚洲一区二区三区中文字幕 | 精品国产精品网麻豆系列| 欧美日韩激情一区二区三区| 欧美亚洲综合另类| 51久久夜色精品国产麻豆| 欧美日韩国产一区| 欧美一级精品在线| 久久久久久99久久久精品网站| 欧美va亚洲va在线观看蝴蝶网| 久久久精品综合| 亚洲人成网站色在线观看| 亚洲免费av在线| 午夜精品视频一区| 国产又黄又大久久| 成人福利视频在线| 欧美在线播放高清精品| 欧美一卡在线观看| 欧美国产日韩亚洲一区| 亚洲午夜久久久久中文字幕久| 午夜精品久久久久久久| 精品一区二区三区免费| 丰满白嫩尤物一区二区| 91福利视频久久久久| 日韩视频免费观看高清完整版| 久久久久久久国产精品影院| 一区二区三区日韩在线观看| 日韩电影免费在线| 不卡视频在线看| 日韩一区二区三| 中文字幕在线不卡一区二区三区| 亚洲成人动漫av| 成人福利视频网站| 欧美精品日韩一本| 国产欧美一区二区在线| 五月天激情综合| 高清在线不卡av| 69p69国产精品| 国产精品蜜臀av| 狠狠色2019综合网| 欧美性大战xxxxx久久久| 国产日韩一级二级三级| 亚洲成人免费视频| 不卡影院免费观看| 久久影院午夜片一区| 亚洲大片精品永久免费| 懂色av中文字幕一区二区三区 | 久草精品在线观看| 欧美色图天堂网| 国产精品国产三级国产有无不卡| 日韩福利电影在线观看| 91成人免费电影| 亚洲视频一区在线| 国产成人av一区二区三区在线| 日韩一级大片在线| 亚洲成人在线网站| 欧美在线一二三四区| 中文字幕在线观看不卡视频| 国产一区二区不卡| 日韩小视频在线观看专区| 亚洲成人一区二区在线观看| 色悠久久久久综合欧美99| 中文字幕乱码久久午夜不卡| 国产美女娇喘av呻吟久久| 91精品国产综合久久精品app| 一级做a爱片久久| 91免费视频网址| 亚洲精选免费视频| 色哟哟一区二区在线观看 | 日日摸夜夜添夜夜添国产精品| 91一区二区在线观看| 中文字幕制服丝袜成人av| 成人av资源站| 亚洲人快播电影网| 日本韩国欧美一区| 亚洲一区二区三区四区在线免费观看| 91亚洲精品久久久蜜桃| 亚洲精品久久久久久国产精华液| 色婷婷精品久久二区二区蜜臂av | 成人激情免费网站| 成人免费在线视频观看| 懂色av中文字幕一区二区三区| 国产嫩草影院久久久久| 东方aⅴ免费观看久久av| 中文字幕第一区综合| 91免费看`日韩一区二区| 亚洲区小说区图片区qvod| 欧美中文字幕一区| 日本成人超碰在线观看| 精品va天堂亚洲国产| 国产激情一区二区三区桃花岛亚洲| 国产嫩草影院久久久久| 色爱区综合激月婷婷| 婷婷中文字幕综合| 欧美变态口味重另类| av影院午夜一区| 亚洲va国产va欧美va观看| 精品久久久久久久久久久久久久久| 国产麻豆一精品一av一免费| 国产精品黄色在线观看| 欧美日韩国产片| 国产精品99久久久久久似苏梦涵 | 粉嫩av亚洲一区二区图片| 国产蜜臀97一区二区三区| 97久久精品人人做人人爽| 天天综合色天天综合色h| 久久久亚洲欧洲日产国码αv| 色网综合在线观看| 国内精品视频666| 亚洲欧美另类久久久精品| 日韩欧美国产午夜精品| 91社区在线播放| 国产丶欧美丶日本不卡视频| 亚洲午夜激情av| 国产精品国产三级国产普通话99 | 久久这里只有精品首页| 91福利资源站| 成人一区二区三区| 日本不卡1234视频| 一区二区久久久| 国产欧美精品国产国产专区| 91精品国产入口| 国产日产欧美一区二区视频| 国产老女人精品毛片久久| 欧美丝袜丝交足nylons| 国产久卡久卡久卡久卡视频精品| 一区二区三区四区中文字幕| 久久人人超碰精品| 91精品国产综合久久婷婷香蕉| 成人国产视频在线观看| 国产综合色在线| 日韩在线一区二区三区| 一区二区三区在线观看国产 | 成人免费毛片aaaaa**| 蜜臀av性久久久久蜜臀av麻豆| 综合网在线视频| 国产精品素人视频| 国产精品午夜在线观看| 欧美不卡一区二区三区四区| 欧美一区三区二区| 欧美日韩精品免费观看视频| 日本乱人伦一区| 97久久久精品综合88久久| 成人小视频在线| 国产成人免费xxxxxxxx| 国产精品资源在线看| 国产一区二区三区久久久 | 亚洲欧洲在线观看av| 国产日韩欧美亚洲| 国产精品天干天干在观线| 中文字幕在线观看一区二区| 中文字幕一区二区视频| 亚洲人成网站影音先锋播放| 日韩美女精品在线| 亚洲与欧洲av电影| 午夜欧美2019年伦理| 天天综合日日夜夜精品| 麻豆国产精品一区二区三区| 美女网站在线免费欧美精品| 韩国成人在线视频| 国产iv一区二区三区| aa级大片欧美| 欧美午夜电影在线播放| 正在播放一区二区| 久久久久久电影| 国产精品久久久久久久久免费樱桃| 国产精品蜜臀av| 亚洲一区二区欧美激情| 蜜臀va亚洲va欧美va天堂| 狠狠色综合日日| 91在线视频播放| 制服丝袜中文字幕一区| 久久精品一区八戒影视| 亚洲色图视频网站| 首页国产欧美日韩丝袜| 久久国产日韩欧美精品| 成人午夜激情影院| 欧美三片在线视频观看| 久久久亚洲精华液精华液精华液 | 亚洲国产裸拍裸体视频在线观看乱了| 图片区小说区国产精品视频| 国产精品资源在线| 欧美日韩亚洲综合一区| 久久久久国产精品麻豆| 国产一区二区免费视频| 欧洲精品在线观看| 久久亚洲一区二区三区四区| 亚洲人妖av一区二区| 精品午夜一区二区三区在线观看| 色偷偷成人一区二区三区91| 久久亚洲私人国产精品va媚药| 亚洲激情自拍偷拍| 国产成人精品免费视频网站|