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

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

?? fckplugin.js

?? 這個寫的就更好了
?? JS
?? 第 1 頁 / 共 2 頁
字號:
?var FCKDragTableHandler =
{
	"_DragState" : 0,
	"_LeftCell" : null,
	"_RightCell" : null,
	"_MouseMoveMode" : 0,	// 0 - find candidate cells for resizing, 1 - drag to resize
	"_ResizeBar" : null,
	"_OriginalX" : null,
	"_MinimumX" : null,
	"_MaximumX" : null,
	"_LastX" : null,
	"_TableMap" : null,
	"_doc" : document,
	"_IsInsideNode" : function( w, domNode, pos )
	{
		var myCoords = FCKTools.GetWindowPosition( w, domNode ) ;
		var xMin = myCoords.x ;
		var yMin = myCoords.y ;
		var xMax = parseInt( xMin, 10 ) + parseInt( domNode.offsetWidth, 10 ) ;
		var yMax = parseInt( yMin, 10 ) + parseInt( domNode.offsetHeight, 10 ) ;
		if ( pos.x >= xMin && pos.x <= xMax && pos.y >= yMin && pos.y <= yMax )
			return true;
		return false;
	},
	"_GetBorderCells" : function( w, tableNode, tableMap, mouse )
	{
		// Enumerate all the cells in the table.
		var cells = [] ;
		for ( var i = 0 ; i < tableNode.rows.length ; i++ )
		{
			var r = tableNode.rows[i] ;
			for ( var j = 0 ; j < r.cells.length ; j++ )
				cells.push( r.cells[j] ) ;
		}

		if ( cells.length < 1 )
			return null ;

		// Get the cells whose right or left border is nearest to the mouse cursor's x coordinate.
		var minRxDist = null ;
		var lxDist = null ;
		var minYDist = null ;
		var rbCell = null ;
		var lbCell = null ;
		for ( var i = 0 ; i < cells.length ; i++ )
		{
			var pos = FCKTools.GetWindowPosition( w, cells[i] ) ;
			var rightX = pos.x + parseInt( cells[i].clientWidth, 10 ) ;
			var rxDist = mouse.x - rightX ;
			var yDist = mouse.y - ( pos.y + ( cells[i].clientHeight / 2 ) ) ;
			if ( minRxDist == null ||
					( Math.abs( rxDist ) <= Math.abs( minRxDist ) &&
					  ( minYDist == null || Math.abs( yDist ) <= Math.abs( minYDist ) ) ) )
			{
				minRxDist = rxDist ;
				minYDist = yDist ;
				rbCell = cells[i] ;
			}
		}
		/*
		var rowNode = FCKTools.GetElementAscensor( rbCell, "tr" ) ;
		var cellIndex = rbCell.cellIndex + 1 ;
		if ( cellIndex >= rowNode.cells.length )
			return null ;
		lbCell = rowNode.cells.item( cellIndex ) ;
		*/
		var rowIdx = rbCell.parentNode.rowIndex ;
		var colIdx = FCKTableHandler._GetCellIndexSpan( tableMap, rowIdx, rbCell ) ;
		var colSpan = isNaN( rbCell.colSpan ) ? 1 : rbCell.colSpan ;
		lbCell = tableMap[rowIdx][colIdx + colSpan] ;

		if ( ! lbCell )
			return null ;

		// Abort if too far from the border.
		lxDist = mouse.x - FCKTools.GetWindowPosition( w, lbCell ).x ;
		if ( lxDist < 0 && minRxDist < 0 && minRxDist < -2 )
			return null ;
		if ( lxDist > 0 && minRxDist > 0 && lxDist > 3 )
			return null ;

		return { "leftCell" : rbCell, "rightCell" : lbCell } ;
	},
	"_GetResizeBarPosition" : function()
	{
		var row = FCKTools.GetElementAscensor( this._RightCell, "tr" ) ;
		return FCKTableHandler._GetCellIndexSpan( this._TableMap, row.rowIndex, this._RightCell ) ;
	},
	"_ResizeBarMouseDownListener" : function( evt )
	{
		if ( ! evt )
			evt = window.event ;
		if ( FCKDragTableHandler._LeftCell )
			FCKDragTableHandler._MouseMoveMode = 1 ;
		if ( FCKBrowserInfo.IsIE )
			FCKDragTableHandler._ResizeBar.filters.item("DXImageTransform.Microsoft.Alpha").opacity = 50 ;
		else
			FCKDragTableHandler._ResizeBar.style.opacity = 0.5 ;
		FCKDragTableHandler._OriginalX = evt.clientX ;

		// Calculate maximum and minimum x-coordinate delta.
		var borderIndex = FCKDragTableHandler._GetResizeBarPosition() ;
		var offset = FCKDragTableHandler._GetIframeOffset();
		var table = FCKTools.GetElementAscensor( FCKDragTableHandler._LeftCell, "table" );
		var minX = null ;
		var maxX = null ;
		for ( var r = 0 ; r < FCKDragTableHandler._TableMap.length ; r++ )
		{
			var leftCell = FCKDragTableHandler._TableMap[r][borderIndex - 1] ;
			var rightCell = FCKDragTableHandler._TableMap[r][borderIndex] ;
			var leftPosition = FCKTools.GetWindowPosition( FCK.EditorWindow, leftCell ) ;
			var rightPosition = FCKTools.GetWindowPosition( FCK.EditorWindow, rightCell ) ;
			var leftPadding = FCKDragTableHandler._GetCellPadding( table, leftCell ) ;
			var rightPadding = FCKDragTableHandler._GetCellPadding( table, rightCell ) ;
			if ( minX == null || leftPosition.x + leftPadding > minX )
				minX = leftPosition.x + leftPadding ;
			if ( maxX == null || rightPosition.x + rightCell.clientWidth - rightPadding < maxX )
				maxX = rightPosition.x + rightCell.clientWidth - rightPadding ;
		}

		FCKDragTableHandler._MinimumX = minX + offset.x ;
		FCKDragTableHandler._MaximumX = maxX + offset.x ;
		FCKDragTableHandler._LastX = null ;
	},
	"_ResizeBarMouseUpListener" : function( evt )
	{
		if ( ! evt )
			evt = window.event ;
		FCKDragTableHandler._MouseMoveMode = 0 ;
		FCKDragTableHandler._HideResizeBar() ;

		if ( FCKDragTableHandler._LastX == null )
			return ;

		// Calculate the delta value.
		var deltaX = FCKDragTableHandler._LastX - FCKDragTableHandler._OriginalX ;

		// Then, build an array of current column width values.
		// This algorithm can be very slow if the cells have insane colSpan values. (e.g. colSpan=1000).
		var table = FCKTools.GetElementAscensor( FCKDragTableHandler._LeftCell, "table" ) ;
		var colArray = [] ;
		var tableMap = FCKDragTableHandler._TableMap ;
		for ( var i = 0 ; i < tableMap.length ; i++ )
		{
			for ( var j = 0 ; j < tableMap[i].length ; j++ )
			{
				var cell = tableMap[i][j] ;
				var width = FCKDragTableHandler._GetCellWidth( table, cell ) ;
				var colSpan = isNaN( cell.colSpan) ? 1 : cell.colSpan ;
				if ( colArray.length <= j )
					colArray.push( { width : width / colSpan, colSpan : colSpan } ) ;
				else
				{
					var guessItem = colArray[j] ;
					if ( guessItem.colSpan > colSpan )
					{
						guessItem.width = width / colSpan ;
						guessItem.colSpan = colSpan ;
					}
				}
			}
		}

		// Find out the equivalent column index of the two cells selected for resizing.
		colIndex = FCKDragTableHandler._GetResizeBarPosition() ;

		// Note that colIndex must be at least 1 here, so it's safe to subtract 1 from it.
		colIndex-- ;

		// Modify the widths in the colArray according to the mouse coordinate delta value.
		colArray[colIndex].width += deltaX ;
		colArray[colIndex + 1].width -= deltaX ;

		// Clear all cell widths, delete all <col> elements from the table.
		for ( var r = 0 ; r < table.rows.length ; r++ )
		{
			var row = table.rows.item( r ) ;
			for ( var c = 0 ; c < row.cells.length ; c++ )
			{
				var cell = row.cells.item( c ) ;
				cell.width = "" ;
				cell.style.width = "" ;
			}
		}
		var colElements = table.getElementsByTagName( "col" ) ;
		for ( var i = colElements.length - 1 ; i >= 0 ; i-- )
			colElements[i].parentNode.removeChild( colElements[i] ) ;

		// Set new cell widths.
		var processedCells = [] ;
		for ( var i = 0 ; i < tableMap.length ; i++ )
		{
			for ( var j = 0 ; j < tableMap[i].length ; j++ )
			{
				var cell = tableMap[i][j] ;
				if ( cell._Processed )
					continue ;
				if ( tableMap[i][j-1] != cell )
					cell.width = colArray[j].width ;
				else
					cell.width = parseInt( cell.width, 10 ) + parseInt( colArray[j].width, 10 ) ;
				if ( tableMap[i][j+1] != cell )
				{
					processedCells.push( cell ) ;
					cell._Processed = true ;
				}
			}
		}
		for ( var i = 0 ; i < processedCells.length ; i++ )
		{
			if ( FCKBrowserInfo.IsIE )
				processedCells[i].removeAttribute( '_Processed' ) ;
			else
				delete processedCells[i]._Processed ;
		}

		FCKDragTableHandler._LastX = null ;
	},
	"_ResizeBarMouseMoveListener" : function( evt )
	{
		if ( ! evt )
			evt = window.event ;
		if ( FCKDragTableHandler._MouseMoveMode == 0 )
			return FCKDragTableHandler._MouseFindHandler( FCK, evt ) ;
		else
			return FCKDragTableHandler._MouseDragHandler( FCK, evt ) ;
	},
	// Calculate the padding of a table cell.
	// It returns the value of paddingLeft + paddingRight of a table cell.
	// This function is used, in part, to calculate the width parameter that should be used for setting cell widths.
	// The equation in question is clientWidth = paddingLeft + paddingRight + width.
	// So that width = clientWidth - paddingLeft - paddingRight.
	// The return value of this function must be pixel accurate acorss all supported browsers, so be careful if you need to modify it.
	"_GetCellPadding" : function( table, cell )
	{
		var attrGuess = parseInt( table.cellPadding, 10 ) * 2 ;
		var cssGuess = null ;
		if ( typeof( window.getComputedStyle ) == "function" )
		{
			var styleObj = window.getComputedStyle( cell, null ) ;
			cssGuess = parseInt( styleObj.getPropertyValue( "padding-left" ), 10 ) +
				parseInt( styleObj.getPropertyValue( "padding-right" ), 10 ) ;
		}
		else
			cssGuess = parseInt( cell.currentStyle.paddingLeft, 10 ) + parseInt (cell.currentStyle.paddingRight, 10 ) ;

		var cssRuntime = cell.style.padding ;
		if ( isFinite( cssRuntime ) )
			cssGuess = parseInt( cssRuntime, 10 ) * 2 ;
		else
		{
			cssRuntime = cell.style.paddingLeft ;
			if ( isFinite( cssRuntime ) )
				cssGuess = parseInt( cssRuntime, 10 ) ;
			cssRuntime = cell.style.paddingRight ;
			if ( isFinite( cssRuntime ) )
				cssGuess += parseInt( cssRuntime, 10 ) ;
		}

		attrGuess = parseInt( attrGuess, 10 ) ;
		cssGuess = parseInt( cssGuess, 10 ) ;
		if ( isNaN( attrGuess ) )
			attrGuess = 0 ;
		if ( isNaN( cssGuess ) )

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产高清精品网站| 亚洲午夜久久久久久久久电影网| 亚洲综合区在线| 99久久精品国产麻豆演员表| 欧美电影在线免费观看| 亚洲精品老司机| 99麻豆久久久国产精品免费| 久久婷婷色综合| 国产成人综合在线播放| 中文字幕久久午夜不卡| 国产麻豆午夜三级精品| 欧美午夜不卡在线观看免费| 亚洲综合免费观看高清完整版在线| 91在线观看一区二区| 国产精品成人一区二区艾草| 国产激情一区二区三区四区 | 91久久精品一区二区| 日韩国产一二三区| 欧美巨大另类极品videosbest| 亚洲va国产va欧美va观看| 在线不卡的av| www.色精品| 奇米四色…亚洲| 久久久久高清精品| 在线亚洲欧美专区二区| 久久国产乱子精品免费女| 亚洲人成网站色在线观看 | 国产91在线看| 日韩av电影一区| 中文字幕亚洲视频| 国产午夜精品一区二区| 91在线播放网址| 菠萝蜜视频在线观看一区| 免费看黄色91| 亚洲丶国产丶欧美一区二区三区| 欧美精品一区二区精品网| 日本道色综合久久| www.久久精品| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 美女视频第一区二区三区免费观看网站| 欧美高清在线一区二区| 欧美成人精品3d动漫h| 日韩欧美中文字幕一区| 色成年激情久久综合| 99久久精品免费| 色综合天天综合网国产成人综合天| 国产精品99久| 9人人澡人人爽人人精品| 成人激情小说网站| 99re66热这里只有精品3直播 | 亚洲成人动漫av| 亚洲自拍另类综合| 亚洲一区二三区| 欧美日韩视频在线第一区| 成人动漫一区二区在线| 成人免费av在线| 91一区二区在线| 欧美日韩免费一区二区三区 | 加勒比av一区二区| 国产99久久久国产精品潘金网站| 99久久国产综合精品色伊 | 国产在线精品一区二区| 成人美女视频在线看| 色综合久久久久久久| 欧美亚洲综合一区| 日韩免费电影一区| 亚洲欧美日本在线| 免费观看91视频大全| 国产一区二区三区观看| 91在线观看美女| 26uuu色噜噜精品一区| 久久精品一区四区| 亚洲一区二区三区四区在线观看| 午夜精品久久久久久久99樱桃| 激情欧美一区二区| 欧美午夜宅男影院| 国产精品―色哟哟| 老司机免费视频一区二区| 99久免费精品视频在线观看| 精品噜噜噜噜久久久久久久久试看| 中文字幕亚洲综合久久菠萝蜜| 久久99在线观看| 欧美日韩在线播放一区| ●精品国产综合乱码久久久久| 裸体健美xxxx欧美裸体表演| 99国产精品久久久久久久久久久| 欧美一级日韩免费不卡| 亚洲国产你懂的| av高清久久久| 国产目拍亚洲精品99久久精品| 经典一区二区三区| 久久综合九色综合久久久精品综合 | 中文一区一区三区高中清不卡| 看国产成人h片视频| 欧美精品久久99久久在免费线| 亚洲成人av电影| 在线观看一区不卡| 一区二区国产视频| 欧美亚洲日本国产| 一区二区高清在线| 欧美日韩aaaaaa| 久久精品免费观看| 日韩午夜av电影| 国产精品一区三区| 久久久777精品电影网影网| 国产精品1024| 亚洲午夜久久久久久久久电影院| 欧美日韩国产经典色站一区二区三区 | 欧美视频一区二区三区| 图片区小说区区亚洲影院| 日韩欧美一级在线播放| 国产激情视频一区二区在线观看| 欧美大片在线观看| 99久久99久久精品免费观看| 亚洲一区二区四区蜜桃| 欧美日韩你懂的| 国产精品一区二区三区网站| 国产精品国产成人国产三级| 欧美高清激情brazzers| 成人美女在线视频| 老司机一区二区| 亚洲一区二区在线视频| 久久久久九九视频| 欧美美女视频在线观看| 粉嫩绯色av一区二区在线观看| 亚洲成人av电影在线| 国产精品初高中害羞小美女文| 欧美日韩午夜精品| av亚洲精华国产精华精华| 激情亚洲综合在线| 日本va欧美va瓶| 亚洲综合视频在线观看| 国产精品麻豆久久久| 日韩亚洲欧美成人一区| 欧美三级中文字幕在线观看| 国产69精品久久777的优势| 国内精品视频一区二区三区八戒| 洋洋av久久久久久久一区| 国产午夜一区二区三区| 欧美一区二区三区喷汁尤物| 成人免费视频caoporn| 国产精品1区二区.| 成人av在线一区二区三区| 成人免费av资源| 不卡区在线中文字幕| av午夜精品一区二区三区| 成人av网址在线观看| 99精品欧美一区二区三区小说| 91年精品国产| 欧美日韩一区二区三区在线| 欧美日韩一区视频| 日韩欧美亚洲一区二区| 日韩精品一区二区三区中文精品| 91麻豆精品国产无毒不卡在线观看| 欧美日韩中文精品| 日韩午夜电影av| 国产亚洲一区二区三区四区 | 久久先锋资源网| 亚洲欧美欧美一区二区三区| 亚洲成人福利片| 国产成人三级在线观看| 日本高清无吗v一区| 精品久久久久av影院| 中文字幕精品一区二区三区精品| 一区二区三区四区不卡视频| 日本成人中文字幕在线视频| 国产成人精品免费在线| 欧美日韩综合不卡| 欧美国产精品一区二区| 亚洲国产aⅴ天堂久久| 国产自产视频一区二区三区| 在线视频欧美精品| 久久久美女艺术照精彩视频福利播放| 一区在线播放视频| 紧缚奴在线一区二区三区| 欧美性猛片xxxx免费看久爱| 久久天堂av综合合色蜜桃网| 亚洲高清视频中文字幕| 成人精品国产免费网站| 欧美一激情一区二区三区| 国产精品久久久久久久久搜平片| 亚洲一区二区三区视频在线| 丁香天五香天堂综合| 日韩美女一区二区三区四区| 国产精品久久久久久久久图文区| 国产在线精品一区二区三区不卡| 777午夜精品视频在线播放| 一区二区三区中文字幕| 99精品一区二区| 亚洲欧洲精品天堂一级| 国产高清不卡一区| 日韩精品一区二区在线| 亚洲国产日日夜夜| 欧美群妇大交群的观看方式| 亚洲国产人成综合网站| 成人性视频网站| 亚洲日本在线看| 欧美卡1卡2卡| 精品一区在线看| 日本一区二区动态图|