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

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

?? fcktools.js

?? OA.....其他人不需帳號就可自由下載此源碼其他人不需帳號就可自由下載此源碼
?? JS
?? 第 1 頁 / 共 2 頁
字號:
?/*
 * 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.
 */

var FCKTools = new Object() ;

FCKTools.CreateBogusBR = function( targetDocument )
{
	var eBR = targetDocument.createElement( 'br' ) ;
//	eBR.setAttribute( '_moz_editor_bogus_node', 'TRUE' ) ;
	eBR.setAttribute( 'type', '_moz' ) ;
	return eBR ;
}

// Returns a reference to the appended style sheet or an array with all the appended references
FCKTools.AppendStyleSheet = function( documentElement, cssFileUrlOrArray )
{
	if ( typeof( cssFileUrlOrArray ) == 'string' )
		return this._AppendStyleSheet( documentElement, cssFileUrlOrArray ) ;
	else
	{
		var aStyleSheeArray = new Array() ;

		for ( var i = 0 ; i < cssFileUrlOrArray.length ; i++ )
			aStyleSheeArray.push(this._AppendStyleSheet( documentElement, cssFileUrlOrArray[i] ) ) ;

		return aStyleSheeArray ;
	}
}

FCKTools.AppendStyleString = function ( documentElement, cssStyles )
{
	this._AppendStyleString( documentElement, cssStyles ) ;
}

FCKTools.GetElementDocument = function ( element )
{
	return element.ownerDocument || element.document ;
}

// Get the window object where the element is placed in.
FCKTools.GetElementWindow = function( element )
{
	return this.GetDocumentWindow( this.GetElementDocument( element ) ) ;
}

FCKTools.GetDocumentWindow = function( document )
{
	// With Safari, there is not way to retrieve the window from the document, so we must fix it.
	if ( FCKBrowserInfo.IsSafari && !document.parentWindow )
		this.FixDocumentParentWindow( window.top ) ;

	return document.parentWindow || document.defaultView ;
}

/*
	This is a Safari specific function that fix the reference to the parent
	window from the document object.
*/
FCKTools.FixDocumentParentWindow = function( targetWindow )
{
	if ( targetWindow.document )
		targetWindow.document.parentWindow = targetWindow ;

	for ( var i = 0 ; i < targetWindow.frames.length ; i++ )
		FCKTools.FixDocumentParentWindow( targetWindow.frames[i] ) ;
}

FCKTools.HTMLEncode = function( text )
{
	if ( !text )
		return '' ;

	text = text.replace( /&/g, '&amp;' ) ;
	text = text.replace( /</g, '&lt;' ) ;
	text = text.replace( />/g, '&gt;' ) ;

	return text ;
}

FCKTools.HTMLDecode = function( text )
{
	if ( !text )
		return '' ;

	text = text.replace( /&gt;/g, '>' ) ;
	text = text.replace( /&lt;/g, '<' ) ;
	text = text.replace( /&amp;/g, '&' ) ;

	return text ;
}

FCKTools._ProcessLineBreaksForPMode = function( oEditor, text, liState, node, strArray )
{
	var closeState = 0 ;
	var blockStartTag = "<p>" ;
	var blockEndTag = "</p>" ;
	var lineBreakTag = "<br />" ;
	if ( liState )
	{
		blockStartTag = "<li>" ;
		blockEndTag = "</li>" ;
		closeState = 1 ;
	}

	// Are we currently inside a <p> tag now?
	// If yes, close it at the next double line break.
	while ( node && node != oEditor.FCK.EditorDocument.body )
	{
		if ( node.tagName.toLowerCase() == 'p' )
		{
			closeState = 1 ;
			break;
		}
		node = node.parentNode ;
	}

	for ( var i = 0 ; i < text.length ; i++ )
	{
		var c = text.charAt( i ) ;
		if ( c == '\r' )
			continue ;

		if ( c != '\n' )
		{
			strArray.push( c ) ;
			continue ;
		}

		// Now we have encountered a line break.
		// Check if the next character is also a line break.
		var n = text.charAt( i + 1 ) ;
		if ( n == '\r' )
		{
			i++ ;
			n = text.charAt( i + 1 ) ;
		}
		if ( n == '\n' )
		{
			i++ ;	// ignore next character - we have already processed it.
			if ( closeState )
				strArray.push( blockEndTag ) ;
			strArray.push( blockStartTag ) ;
			closeState = 1 ;
		}
		else
			strArray.push( lineBreakTag ) ;
	}
}

FCKTools._ProcessLineBreaksForDivMode = function( oEditor, text, liState, node, strArray )
{
	var closeState = 0 ;
	var blockStartTag = "<div>" ;
	var blockEndTag = "</div>" ;
	if ( liState )
	{
		blockStartTag = "<li>" ;
		blockEndTag = "</li>" ;
		closeState = 1 ;
	}

	// Are we currently inside a <div> tag now?
	// If yes, close it at the next double line break.
	while ( node && node != oEditor.FCK.EditorDocument.body )
	{
		if ( node.tagName.toLowerCase() == 'div' )
		{
			closeState = 1 ;
			break ;
		}
		node = node.parentNode ;
	}

	for ( var i = 0 ; i < text.length ; i++ )
	{
		var c = text.charAt( i ) ;
		if ( c == '\r' )
			continue ;

		if ( c != '\n' )
		{
			strArray.push( c ) ;
			continue ;
		}

		if ( closeState )
		{
			if ( strArray[ strArray.length - 1 ] == blockStartTag )
			{
				// A div tag must have some contents inside for it to be visible.
				strArray.push( "&nbsp;" ) ;
			}
			strArray.push( blockEndTag ) ;
		}
		strArray.push( blockStartTag ) ;
		closeState = 1 ;
	}
	if ( closeState )
		strArray.push( blockEndTag ) ;
}

FCKTools._ProcessLineBreaksForBrMode = function( oEditor, text, liState, node, strArray )
{
	var closeState = 0 ;
	var blockStartTag = "<br />" ;
	var blockEndTag = "" ;
	if ( liState )
	{
		blockStartTag = "<li>" ;
		blockEndTag = "</li>" ;
		closeState = 1 ;
	}

	for ( var i = 0 ; i < text.length ; i++ )
	{
		var c = text.charAt( i ) ;
		if ( c == '\r' )
			continue ;

		if ( c != '\n' )
		{
			strArray.push( c ) ;
			continue ;
		}

		if ( closeState && blockEndTag.length )
			strArray.push ( blockEndTag ) ;
		strArray.push( blockStartTag ) ;
		closeState = 1 ;
	}
}

FCKTools.ProcessLineBreaks = function( oEditor, oConfig, text )
{
	var enterMode = oConfig.EnterMode.toLowerCase() ;
	var strArray = [] ;

	// Is the caret or selection inside an <li> tag now?
	var liState = 0 ;
	var range = new oEditor.FCKDomRange( oEditor.FCK.EditorWindow ) ;
	range.MoveToSelection() ;
	var node = range._Range.startContainer ;
	while ( node && node.nodeType != 1 )
		node = node.parentNode ;
	if ( node && node.tagName.toLowerCase() == 'li' )
		liState = 1 ;

	if ( enterMode == 'p' )
		this._ProcessLineBreaksForPMode( oEditor, text, liState, node, strArray ) ;
	else if ( enterMode == 'div' )
		this._ProcessLineBreaksForDivMode( oEditor, text, liState, node, strArray ) ;
	else if ( enterMode == 'br' )
		this._ProcessLineBreaksForBrMode( oEditor, text, liState, node, strArray ) ;
	return strArray.join( "" ) ;
}

/**
 * Adds an option to a SELECT element.
 */
FCKTools.AddSelectOption = function( selectElement, optionText, optionValue )
{
	var oOption = FCKTools.GetElementDocument( selectElement ).createElement( "OPTION" ) ;

	oOption.text	= optionText ;
	oOption.value	= optionValue ;

	selectElement.options.add(oOption) ;

	return oOption ;
}

FCKTools.RunFunction = function( func, thisObject, paramsArray, timerWindow )
{
	if ( func )
		this.SetTimeout( func, 0, thisObject, paramsArray, timerWindow ) ;
}

FCKTools.SetTimeout = function( func, milliseconds, thisObject, paramsArray, timerWindow )
{
	return ( timerWindow || window ).setTimeout(
		function()
		{
			if ( paramsArray )
				func.apply( thisObject, [].concat( paramsArray ) ) ;
			else
				func.apply( thisObject ) ;
		},
		milliseconds ) ;
}

FCKTools.SetInterval = function( func, milliseconds, thisObject, paramsArray, timerWindow )

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线免费精品视频| 欧美性色aⅴ视频一区日韩精品| 一卡二卡欧美日韩| 欧美顶级少妇做爰| 精品久久久久av影院| 久久一留热品黄| 欧美国产精品一区二区三区| 国产情人综合久久777777| 国产精品免费免费| 国产精品国产自产拍高清av王其| 国产精品久久久久久妇女6080 | 欧美日韩一二区| 欧美日韩视频在线一区二区| 在线不卡免费欧美| 久久亚洲一级片| 亚洲欧洲精品一区二区三区| 亚洲精品乱码久久久久| 日韩和欧美一区二区三区| 久久99深爱久久99精品| 福利电影一区二区| 欧美性受xxxx黑人xyx| 欧美一区日本一区韩国一区| 精品播放一区二区| 亚洲欧美激情小说另类| 日韩精品久久理论片| 国产不卡免费视频| 欧美视频在线一区二区三区 | 亚洲第一在线综合网站| 久久99久国产精品黄毛片色诱| 狠狠色狠狠色合久久伊人| 成人av电影在线观看| 欧美高清视频不卡网| 久久免费美女视频| 亚洲成人av福利| 成人av手机在线观看| 欧美电影影音先锋| 亚洲色图欧美激情| 久久99日本精品| 欧美在线影院一区二区| 国产日韩欧美麻豆| 日韩在线观看一区二区| 99视频热这里只有精品免费| 日韩午夜在线播放| 亚洲一二三区不卡| 国产精品18久久久久久vr| 欧美精品在线一区二区三区| 国产女同互慰高潮91漫画| 日本不卡1234视频| 欧美影院一区二区| 亚洲色图欧美偷拍| 成人午夜视频网站| 精品国产人成亚洲区| 亚洲韩国一区二区三区| 99精品一区二区| 国产视频不卡一区| 狠狠色丁香婷婷综合久久片| 欧美一区二区在线播放| 亚洲最大的成人av| 色老汉av一区二区三区| 中文字幕一区不卡| av电影一区二区| 国产精品视频一二三区| 国产91对白在线观看九色| 精品国产在天天线2019| 精品亚洲成a人| 精品国产一区久久| 国产另类ts人妖一区二区| 欧美成人国产一区二区| 看电视剧不卡顿的网站| 91精品免费在线| 免费看欧美美女黄的网站| 91精品免费观看| 精品一区二区三区的国产在线播放| 欧美日韩成人综合天天影院 | 中文欧美字幕免费| 福利91精品一区二区三区| 国产日韩影视精品| 国产成人在线看| 国产精品久久久久久久久免费丝袜 | 欧美丰满高潮xxxx喷水动漫| 日本不卡视频在线观看| 日韩欧美一级片| 国产精品2024| 日韩伦理免费电影| 欧美色图免费看| 日本成人在线电影网| 2017欧美狠狠色| aaa欧美大片| 亚洲另类春色校园小说| 欧美性色黄大片手机版| 蜜桃av噜噜一区二区三区小说| 日韩欧美国产精品一区| 成人综合日日夜夜| 亚洲一区二区三区中文字幕| 555夜色666亚洲国产免| 国产一区二区三区在线观看精品| 亚洲国产精品黑人久久久| 欧美性xxxxx极品少妇| 日本美女一区二区| 国产欧美视频一区二区| 91黄色小视频| 国产一区二区三区在线观看免费| 国产精品久久久久久久久久免费看| 欧美亚洲日本国产| 久久99精品国产麻豆婷婷| 成人免费在线视频观看| 4438成人网| 99国产精品久久久久| 日本欧美大码aⅴ在线播放| 欧美极品aⅴ影院| 欧美福利电影网| aaa欧美日韩| 国产又粗又猛又爽又黄91精品| 亚洲日本在线观看| 欧美成人a∨高清免费观看| zzijzzij亚洲日本少妇熟睡| 美女在线一区二区| 亚洲精品国产品国语在线app| 2021中文字幕一区亚洲| 在线免费观看日本欧美| 粉嫩在线一区二区三区视频| 偷窥国产亚洲免费视频| 国产精品成人免费| 精品久久五月天| 7777女厕盗摄久久久| 91网上在线视频| 国产精品99久久久久久似苏梦涵 | 欧美videossexotv100| 在线观看91精品国产入口| 精品一区二区三区蜜桃| 日韩精品高清不卡| 亚洲美女免费视频| 亚洲欧洲精品一区二区三区不卡| 精品少妇一区二区三区视频免付费 | 91精品国产欧美一区二区18| 91免费观看国产| 国产精品一级二级三级| 看电影不卡的网站| 免费观看在线色综合| 日本视频免费一区| 日本中文字幕一区二区视频 | 日韩一区二区三区四区五区六区| 日本高清成人免费播放| 99久久精品一区| 成人看片黄a免费看在线| 国产福利不卡视频| 国产精品99精品久久免费| 国产福利一区二区三区| 激情综合网最新| 国产成人亚洲精品青草天美 | 国产成人av一区二区| 国产精品99久久久| 国产999精品久久| 国产成人精品一区二区三区网站观看| 久草中文综合在线| 国产综合色视频| 高潮精品一区videoshd| 国产精品一区二区91| 粉嫩久久99精品久久久久久夜| 国产jizzjizz一区二区| 成人精品视频网站| 91丝袜美女网| 欧美一区二区在线播放| 26uuu久久天堂性欧美| 国产亲近乱来精品视频| 亚洲欧洲日产国产综合网| 一区二区三区免费| 日韩成人一区二区| 国产丶欧美丶日本不卡视频| 成人一级视频在线观看| 91视频在线观看| 欧美日本韩国一区| 久久女同性恋中文字幕| 日韩美女久久久| 日韩av在线播放中文字幕| 国产精品一区二区在线看| 91天堂素人约啪| 日韩美女主播在线视频一区二区三区| 久久久久高清精品| 一区二区三区蜜桃| 精品午夜一区二区三区在线观看 | 欧美图片一区二区三区| 欧美一区二区性放荡片| 亚洲国产成人午夜在线一区| 一区二区三区视频在线看| 麻豆91精品91久久久的内涵| 成人av网站免费观看| 欧美巨大另类极品videosbest| 26uuu亚洲综合色欧美| 一区二区三区四区在线免费观看| 麻豆精品久久久| 91免费在线看| 久久精品水蜜桃av综合天堂| 亚洲国产一区二区视频| 国产福利一区在线观看| 51精品久久久久久久蜜臀| 国产精品久久久久婷婷二区次| 香蕉成人伊视频在线观看| 粉嫩高潮美女一区二区三区| 欧美久久久久久蜜桃|