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

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

?? fckplugin.js

?? java books to study hard and teaching
?? JS
?? 第 1 頁 / 共 3 頁
字號:
?FCKCommands.RegisterCommand('InsertCode',new FCKDialogCommand( 'InsertCode', FCKLang["InsertCodeBtn"], FCKPlugins.Items['insertcode'].Path + 'fck_insertcode.html', 550, 420 ) ) ;
var oInsertCode=new FCKToolbarButton('InsertCode',null,FCKLang["InsertCodeBtn"],null,false,true,48);
FCKToolbarItems.RegisterItem('InsertCode',oInsertCode);
var FCKInsertCode = new Object() ;
FCKInsertCode.Add = function( lan,lantxt,txt )
{
	var coText = FCK.CreateElement('DIV');
	coText.className = 'codeText';
	var registered = new Object();
	for(var brush in dp.sh.Brushes)
	{
		var aliases = dp.sh.Brushes[brush].Aliases;
		if(aliases == null) continue;
		for(var i=0;i<aliases.length;i++) registered[aliases[i]] = brush;
	};
	var ht = new dp.sh.Brushes[registered[lan]]();
	ht.Highlight(txt);
	coText.innerHTML='<div class="codeHead">'+lantxt+'代碼</div>'+ht.div.innerHTML;
}

var dp = {
	sh :
	{
		Utils	: {},
		RegexLib: {},
		Brushes	: {}
	}
};

// make an alias
dp.SyntaxHighlighter = dp.sh;

//
// Common reusable regular expressions
//
dp.sh.RegexLib = {
	MultiLineCComments : new RegExp('/\\*[\\s\\S]*?\\*/', 'gm'),
	SingleLineCComments : new RegExp('//.*$', 'gm'),
	SingleLinePerlComments : new RegExp('#.*$', 'gm'),
	DoubleQuotedString : new RegExp('"(?:\\.|(\\\\\\")|[^\\""])*"','g'),
	SingleQuotedString : new RegExp("'(?:\\.|(\\\\\\')|[^\\''])*'", 'g')
};

//
// Match object
//
dp.sh.Match = function(value, index, css)
{
	this.value = value;
	this.index = index;
	this.length = value.length;
	this.css = css;
}

//
// Highlighter object
//
dp.sh.Highlighter = function()
{
	this.tabsToSpaces = true;
	this.wrapColumn = 80;
	this.showColumns = true;
	this.firstLine = 1;
}

// static callback for the match sorting
dp.sh.Highlighter.SortCallback = function(m1, m2)
{
	// sort matches by index first
	if(m1.index < m2.index)
		return -1;
	else if(m1.index > m2.index)
		return 1;
	else
	{
		// if index is the same, sort by length
		if(m1.length < m2.length)
			return -1;
		else if(m1.length > m2.length)
			return 1;
	}
	return 0;
}

dp.sh.Highlighter.prototype.CreateElement = function(name)
{
	var result = document.createElement(name);
	result.highlighter = this;
	return result;
}

// gets a list of all matches for a given regular expression
dp.sh.Highlighter.prototype.GetMatches = function(regex, css)
{
	var index = 0;
	var match = null;

	while((match = regex.exec(this.code)) != null)
		this.matches[this.matches.length] = new dp.sh.Match(match[0], match.index, css);
}

dp.sh.Highlighter.prototype.AddBit = function(str, css)
{
	if(str == null || str.length == 0)
		return;

	var span = this.CreateElement('SPAN');
	str = str.replace(/ /g, '&nbsp;');
	str = str.replace(/</g, '&lt;');
	str = str.replace(/\n/gm, '&nbsp;<br>');

	// when adding a piece of code, check to see if it has line breaks in it 
	// and if it does, wrap individual line breaks with span tags
	if(css != null)
	{
		if((/br/gi).test(str))
		{
			var lines = str.split('&nbsp;<br>');
			
			for(var i = 0; i < lines.length; i++)
			{
				span = this.CreateElement('SPAN');
				span.className = css;
				span.innerHTML = lines[i];
				
				this.div.appendChild(span);
				
				// don't add a <BR> for the last line
				if(i + 1 < lines.length)
					this.div.appendChild(this.CreateElement('BR'));
			}
		}
		else
		{
			span.className = css;
			span.innerHTML = str;
			this.div.appendChild(span);
		}
	}
	else
	{
		span.innerHTML = str;
		this.div.appendChild(span);
	}
}

// checks if one match is inside any other match
dp.sh.Highlighter.prototype.IsInside = function(match)
{
	if(match == null || match.length == 0)
		return false;
	
	for(var i = 0; i < this.matches.length; i++)
	{
		var c = this.matches[i];
		
		if(c == null)
			continue;

		if((match.index > c.index) && (match.index < c.index + c.length))
			return true;
	}
	
	return false;
}

dp.sh.Highlighter.prototype.ProcessRegexList = function()
{
	for(var i = 0; i < this.regexList.length; i++)
		this.GetMatches(this.regexList[i].regex, this.regexList[i].css);
}

dp.sh.Highlighter.prototype.ProcessSmartTabs = function(code)
{
	var lines	= code.split('\n');
	var result	= '';
	var tabSize	= 4;
	var tab		= '\t';

	// This function inserts specified amount of spaces in the string
	// where a tab is while removing that given tab. 
	function InsertSpaces(line, pos, count)
	{
		var left	= line.substr(0, pos);
		var right	= line.substr(pos + 1, line.length);	// pos + 1 will get rid of the tab
		var spaces	= '';
		
		for(var i = 0; i < count; i++)
			spaces += ' ';
		
		return left + spaces + right;
	}

	// This function process one line for 'smart tabs'
	function ProcessLine(line, tabSize)
	{
		if(line.indexOf(tab) == -1)
			return line;

		var pos = 0;

		while((pos = line.indexOf(tab)) != -1)
		{
			// This is pretty much all there is to the 'smart tabs' logic.
			// Based on the position within the line and size of a tab, 
			// calculate the amount of spaces we need to insert.
			var spaces = tabSize - pos % tabSize;
			
			line = InsertSpaces(line, pos, spaces);
		}
		
		return line;
	}

	// Go through all the lines and do the 'smart tabs' magic.
	for(var i = 0; i < lines.length; i++)
		result += ProcessLine(lines[i], tabSize) + '\n';
	
	return result;
}

dp.sh.Highlighter.prototype.SwitchToList = function()
{
	// thanks to Lachlan Donald from SitePoint.com for this <br/> tag fix.
	var html = this.div.innerHTML.replace(/<(br)\/?>/gi, '\n');
	var lines = html.split('\n');

	for(var i = 0, lineIndex = this.firstLine; i < lines.length - 1; i++, lineIndex++)
	{
		var li = this.CreateElement('LI');
		var span = this.CreateElement('SPAN');
		
		// uses .line1 and .line2 css styles for alternating lines
		li.className = (i % 2 == 0) ? 'alt' : '';
		span.innerHTML = lines[i] + '&nbsp;';

		li.appendChild(span);
		this.ol.appendChild(li);
	}
	
	this.div.innerHTML	= '';
}

dp.sh.Highlighter.prototype.Highlight = function(code)
{
	function Trim(str)
	{
		return str.replace(/^\s*(.*?)[\s\n]*$/g, '$1');
	}
	
	function Chop(str)
	{
		return str.replace(/\n*$/, '').replace(/^\n*/, '');
	}

	function Unindent(str)
	{
		var lines = str.split('\n');
		var indents = new Array();
		var regex = new RegExp('^\\s*', 'g');
		var min = 1000;

		// go through every line and check for common number of indents
		for(var i = 0; i < lines.length && min > 0; i++)
		{
			if(Trim(lines[i]).length == 0)
				continue;
				
			var matches = regex.exec(lines[i]);

			if(matches != null && matches.length > 0)
				min = Math.min(matches[0].length, min);
		}

		// trim minimum common number of white space from the begining of every line
		if(min > 0)
			for(var i = 0; i < lines.length; i++)
				lines[i] = lines[i].substr(min);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区免费看| 一二三四社区欧美黄| 亚洲h在线观看| 成人免费毛片app| 欧美一级二级在线观看| 中文字幕亚洲精品在线观看| 蜜桃久久久久久| 91福利视频久久久久| 日本一区二区三区四区在线视频| 午夜精品久久一牛影视| 97精品国产露脸对白| 国产亚洲综合在线| 极品少妇一区二区三区精品视频| 欧美精品久久99| 亚洲精品国产精品乱码不99| 风间由美一区二区av101| 日韩欧美国产高清| 日本美女一区二区| 欧美久久久久久蜜桃| 亚洲综合网站在线观看| av亚洲精华国产精华精华| 久久九九全国免费| 国产精品中文字幕日韩精品 | 色先锋久久av资源部| 国产精品少妇自拍| 高清视频一区二区| 国产亚洲欧美一级| 国产精品综合二区| 久久久美女艺术照精彩视频福利播放| 日韩国产欧美在线视频| 欧美肥胖老妇做爰| 亚洲国产aⅴ成人精品无吗| 91福利区一区二区三区| 亚洲激情第一区| 在线观看视频91| 亚洲午夜电影网| 欧美日韩一区精品| 视频在线在亚洲| 337p亚洲精品色噜噜狠狠| 午夜影院在线观看欧美| 欧美日韩综合色| 五月婷婷欧美视频| 67194成人在线观看| 日韩高清在线不卡| 欧美一级艳片视频免费观看| 麻豆精品国产91久久久久久| 欧美一区二区在线看| 美女一区二区久久| 精品福利视频一区二区三区| 国产在线播放一区二区三区| 久久久精品2019中文字幕之3| 国产激情91久久精品导航 | 欧美电影在线免费观看| 视频一区二区三区入口| 日韩一二三区视频| 久久国产精品99久久人人澡| 精品国产区一区| 国产不卡视频一区| 中文字幕一区二区三区色视频 | 青娱乐精品在线视频| 日韩一区二区三区在线| 狠狠色丁香九九婷婷综合五月| 亚洲精品在线三区| 成人性生交大片免费看视频在线| 国产精品国产三级国产a | 美女免费视频一区二区| 久久亚洲一区二区三区明星换脸 | 韩国av一区二区三区四区| 欧美精彩视频一区二区三区| 一本色道久久综合狠狠躁的推荐| 亚洲第一激情av| 欧美成va人片在线观看| 国产一区二区三区蝌蚪| 中文字幕亚洲电影| 欧美日韩精品欧美日韩精品| 麻豆精品在线观看| 中文在线免费一区三区高中清不卡| 91在线视频免费观看| 五月婷婷综合网| 国产欧美日韩在线看| 91久久人澡人人添人人爽欧美| 午夜欧美大尺度福利影院在线看| 日韩精品一区二区三区中文不卡| 国产成都精品91一区二区三| 一区二区三区鲁丝不卡| 亚洲精品在线观看网站| 色综合久久久网| 经典三级一区二区| 亚洲人成精品久久久久久| 欧美一级在线视频| 99re这里只有精品首页| 男女男精品网站| 亚洲欧洲精品天堂一级| 91精品国产综合久久久蜜臀粉嫩 | 欧美撒尿777hd撒尿| 国产精品一区一区三区| 亚洲在线成人精品| 久久夜色精品一区| 欧美日韩视频在线观看一区二区三区| 久久国产精品第一页| 一区二区三区在线看| 久久夜色精品国产噜噜av| 欧美视频一区二区三区四区| 国产精品中文字幕欧美| 天天影视色香欲综合网老头| 中文字幕+乱码+中文字幕一区| 欧美精品高清视频| 色综合色狠狠综合色| 精品一区二区免费看| 夜夜爽夜夜爽精品视频| 久久久无码精品亚洲日韩按摩| 欧美日韩一卡二卡三卡 | 国模冰冰炮一区二区| 亚洲国产日韩一级| 国产精品日韩成人| 欧美大尺度电影在线| 欧美亚男人的天堂| 成人免费毛片嘿嘿连载视频| 狂野欧美性猛交blacked| 亚洲午夜精品久久久久久久久| 欧美激情综合在线| 日韩欧美不卡在线观看视频| 在线一区二区观看| 成人精品高清在线| 国产主播一区二区三区| 日韩高清在线观看| 亚洲电影视频在线| 亚洲人精品午夜| 国产精品色呦呦| 国产亚洲欧美日韩在线一区| 日韩一区二区在线看| 欧美日韩精品一区二区三区蜜桃| 色综合久久中文综合久久97| 成人性色生活片免费看爆迷你毛片| 蜜桃视频第一区免费观看| 日韩在线一区二区| 亚洲精品视频在线观看免费| 欧美经典一区二区三区| 久久久综合网站| 精品成人免费观看| 欧美大片一区二区| 91精品一区二区三区久久久久久| 欧美综合欧美视频| 91麻豆免费在线观看| jizz一区二区| 成人av网站免费观看| 成人国产在线观看| 成人性生交大片免费看中文| 丁香亚洲综合激情啪啪综合| 国产一区二区三区免费播放| 国产一区激情在线| 韩国精品主播一区二区在线观看| 九九视频精品免费| 精品一区二区三区视频| 精品亚洲国产成人av制服丝袜| 看片网站欧美日韩| 国产一区二区三区四区五区入口 | 色婷婷综合五月| 91麻豆国产福利精品| 色天使色偷偷av一区二区| 日本久久一区二区三区| 91福利国产成人精品照片| 欧美日韩在线电影| 5月丁香婷婷综合| 欧美一级二级在线观看| 精品奇米国产一区二区三区| 精品国产3级a| 国产欧美精品一区二区色综合| 国产欧美日韩激情| 成人欧美一区二区三区黑人麻豆 | 欧美美女一区二区在线观看| 精品视频一区三区九区| 欧美美女网站色| 精品欧美久久久| 中文字幕成人av| 亚洲精品国久久99热| 五月婷婷激情综合网| 美女视频黄免费的久久 | 婷婷久久综合九色综合伊人色| 天天av天天翘天天综合网色鬼国产| 青青青伊人色综合久久| 激情综合网av| 不卡的电影网站| 欧美中文字幕不卡| 91精品国产欧美一区二区成人| 精品国产不卡一区二区三区| 国产精品美女www爽爽爽| 亚洲精品视频在线看| 青青草精品视频| 国产成人av自拍| 在线国产电影不卡| 精品国产免费人成在线观看| 国产精品欧美一区二区三区| 亚洲影院免费观看| 久久精品国产精品亚洲精品| 国产91综合一区在线观看| 色视频成人在线观看免| 欧美一区二区高清| 国产精品美女久久久久高潮| 亚洲成av人片一区二区三区|