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

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

?? shcore.js

?? 在線編輯器
?? JS
?? 第 1 頁 / 共 2 頁
字號:
/**
 * Code Syntax Highlighter.
 * Version 1.5.1
 * Copyright (C) 2004-2007 Alex Gorbatchev.
 * http://www.dreamprojections.com/syntaxhighlighter/
 * 
 * This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General 
 * Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) 
 * any later version.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied 
 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more 
 * details.
 *
 * You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to 
 * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 
 */

//
// create namespaces
//
var dp = {
	sh :
	{
		Toolbar : {},
		Utils	: {},
		RegexLib: {},
		Brushes	: {},
		Strings : {
			AboutDialog : '<html><head><title>About...</title></head><body class="dp-about"><table cellspacing="0"><tr><td class="copy"><p class="title">dp.SyntaxHighlighter</div><div class="para">Version: {V}</p><p><a href="http://www.dreamprojections.com/syntaxhighlighter/?ref=about" target="_blank">http://www.dreamprojections.com/syntaxhighlighter</a></p>&copy;2004-2007 Alex Gorbatchev.</td></tr><tr><td class="footer"><input type="button" class="close" value="OK" onClick="window.close()"/></td></tr></table></body></html>'
		},
		ClipboardSwf : null,
		Version : '1.5.1'
	}
};

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

//
// Toolbar functions
//

dp.sh.Toolbar.Commands = {
	ExpandSource: {
		label: '+ expand source',
		check: function(highlighter) { return highlighter.collapse; },
		func: function(sender, highlighter)
		{
			sender.parentNode.removeChild(sender);
			highlighter.div.className = highlighter.div.className.replace('collapsed', '');
		}
	},
	
	// opens a new windows and puts the original unformatted source code inside.
	ViewSource: {
		label: 'view plain',
		func: function(sender, highlighter)
		{
			var code = dp.sh.Utils.FixForBlogger(highlighter.originalCode).replace(/</g, '&lt;');
			var wnd = window.open('', '_blank', 'width=750, height=400, location=0, resizable=1, menubar=0, scrollbars=0');
			wnd.document.write('<textarea style="width:99%;height:99%">' + code + '</textarea>');
			wnd.document.close();
		}
	},
	
	// Copies the original source code in to the clipboard. Uses either IE only method or Flash object if ClipboardSwf is set
	CopyToClipboard: {
		label: 'copy to clipboard',
		check: function() { return window.clipboardData != null || dp.sh.ClipboardSwf != null; },
		func: function(sender, highlighter)
		{
			var code = dp.sh.Utils.FixForBlogger(highlighter.originalCode)
				.replace(/&lt;/g,'<')
				.replace(/&gt;/g,'>')
				.replace(/&amp;/g,'&')
			;
			
			if(window.clipboardData)
			{
				window.clipboardData.setData('text', code);
			}
			else if(dp.sh.ClipboardSwf != null)
			{
				var flashcopier = highlighter.flashCopier;
				
				if(flashcopier == null)
				{
					flashcopier = document.createElement('div');
					highlighter.flashCopier = flashcopier;
					highlighter.div.appendChild(flashcopier);
				}
				
				flashcopier.innerHTML = '<embed src="' + dp.sh.ClipboardSwf + '" FlashVars="clipboard='+encodeURIComponent(code)+'" width="0" height="0" type="application/x-shockwave-flash"></embed>';
			}
			
			alert('The code is in your clipboard now');
		}
	},
	
	// creates an invisible iframe, puts the original source code inside and prints it
	PrintSource: {
		label: 'print',
		func: function(sender, highlighter)
		{
			var iframe = document.createElement('IFRAME');
			var doc = null;

			// this hides the iframe
			iframe.style.cssText = 'position:absolute;width:0px;height:0px;left:-500px;top:-500px;';
			
			document.body.appendChild(iframe);
			doc = iframe.contentWindow.document;

			dp.sh.Utils.CopyStyles(doc, window.document);
			doc.write('<div class="' + highlighter.div.className.replace('collapsed', '') + ' printing">' + highlighter.div.innerHTML + '</div>');
			doc.close();

			iframe.contentWindow.focus();
			iframe.contentWindow.print();
			
			alert('Printing...');
			
			document.body.removeChild(iframe);
		}
	},
	
	About: {
		label: '?',
		func: function(highlighter)
		{
			var wnd	= window.open('', '_blank', 'dialog,width=300,height=150,scrollbars=0');
			var doc	= wnd.document;

			dp.sh.Utils.CopyStyles(doc, window.document);
			
			doc.write(dp.sh.Strings.AboutDialog.replace('{V}', dp.sh.Version));
			doc.close();
			wnd.focus();
		}
	}
};

// creates a <div /> with all toolbar links
dp.sh.Toolbar.Create = function(highlighter)
{
	var div = document.createElement('DIV');
	
	div.className = 'tools';
	
	for(var name in dp.sh.Toolbar.Commands)
	{
		var cmd = dp.sh.Toolbar.Commands[name];
		
		if(cmd.check != null && !cmd.check(highlighter))
			continue;
		
		div.innerHTML += '<a href="#" onclick="dp.sh.Toolbar.Command(\'' + name + '\',this);return false;">' + cmd.label + '</a>';
	}
	
	return div;
}

// executes toolbar command by name
dp.sh.Toolbar.Command = function(name, sender)
{
	var n = sender;
	
	while(n != null && n.className.indexOf('dp-highlighter') == -1)
		n = n.parentNode;
	
	if(n != null)
		dp.sh.Toolbar.Commands[name].func(sender, n.highlighter);
}

// copies all <link rel="stylesheet" /> from 'target' window to 'dest'
dp.sh.Utils.CopyStyles = function(destDoc, sourceDoc)
{
	var links = sourceDoc.getElementsByTagName('link');

	for(var i = 0; i < links.length; i++)
		if(links[i].rel.toLowerCase() == 'stylesheet')
			destDoc.write('<link type="text/css" rel="stylesheet" href="' + links[i].href + '"></link>');
}

dp.sh.Utils.FixForBlogger = function(str)
{
	return (dp.sh.isBloggerMode == true) ? str.replace(/<br\s*\/?>|&lt;br\s*\/?&gt;/gi, '\n') : str;
}

//
// Common reusable regular expressions
//
dp.sh.RegexLib = {
	MultiLineCComments : new RegExp('/\\*[\\s\\S]*?\\*/', 'gm'),
	SingleLineCComments : new RegExp('//.*$', 'gm'),
	SingleLinePerlComments : new RegExp('#.*$', 'gm'),
	DoubleQuotedString : new RegExp('"(?:\\.|(?:\\\\\\")|[^\\""\\n])*"','g'),
	SingleQuotedString : new RegExp("'(?:\\.|(?:\\\\\\')|[^\\''\\n])*'", '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.annotations = new Array(0);
    this.noGutter = false;
	this.addControls = true;
	this.collapse = false;
	this.tabsToSpaces = true;
	this.wrapColumn = 80;
	this.showColumns = true;
}

// 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;
	var matched;

	while((match = regex.exec(this.code)) != null) {
		// if the re specified a subgroup, highlight just the subgroup.
		// otherwise, highlight the entire match.
		if (match.length > 1) {
			matched = match[1];
			index = match.index + match[0].indexOf(match[1]);
		} else {
			matched = match[0];
			index = match.index;
		}

		this.matches[this.matches.length] = new dp.sh.Match(matched, 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, '&amp;');
	str = str.replace(/ /g, '&nbsp;');
	str = str.replace(/</g, '&lt;');
//	str = str.replace(/&lt;/g, '<');
//	str = str.replace(/>/g, '&gt;');
	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)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲免费观看在线视频| 日本乱人伦一区| 精品国产91乱码一区二区三区| 天天色图综合网| 日韩一区二区三区视频在线| 久久99久久精品欧美| 久久综合色综合88| 懂色av一区二区夜夜嗨| 亚洲日本电影在线| 欧美日韩国产高清一区二区三区| 日本午夜一区二区| 精品国精品国产| 不卡的av在线| 偷偷要91色婷婷| 久久精品视频网| 色哟哟日韩精品| 久久精品国产第一区二区三区| 久久婷婷色综合| 99国产精品一区| 奇米色一区二区| 国产精品欧美一区二区三区| 欧美三区免费完整视频在线观看| 青青草原综合久久大伊人精品优势| 欧美变态tickle挠乳网站| 成人一二三区视频| 亚洲a一区二区| 国产精品视频免费| 欧美精品色一区二区三区| 精品一区二区三区久久| 亚洲激情图片小说视频| 久久日一线二线三线suv| 色综合色狠狠综合色| 美女网站视频久久| 亚洲一区二区三区视频在线 | 波多野结衣中文字幕一区| 一区二区不卡在线播放| 26uuu精品一区二区在线观看| 99久久婷婷国产综合精品| 美女尤物国产一区| 亚洲美女视频一区| 欧美国产日韩在线观看| 9191久久久久久久久久久| 成年人网站91| 精品亚洲成a人在线观看| 亚洲一区在线免费观看| 国产欧美日韩卡一| 日韩精品一区二区三区swag | 国产精品狼人久久影院观看方式| 欧美日韩国产一级| av在线播放不卡| 国产呦精品一区二区三区网站| 亚洲国产精品天堂| 国产精品进线69影院| 久久久久久久综合日本| 欧美精品久久久久久久多人混战 | 五月婷婷久久综合| 亚洲女与黑人做爰| 国产精品天美传媒| 久久亚洲综合av| 欧美大片一区二区三区| 欧美日韩中文字幕一区二区| 色琪琪一区二区三区亚洲区| 成人精品鲁一区一区二区| 激情文学综合插| 久久精品国产亚洲aⅴ| 日韩成人免费看| 午夜精品一区在线观看| 亚洲一区二区三区四区中文字幕| 中文字幕亚洲电影| 国产精品免费av| 亚洲国产精华液网站w| 久久久久久久性| 久久久久久99久久久精品网站| 精品免费视频.| 久久午夜老司机| 欧美国产精品中文字幕| 国产亚洲综合在线| 国产日韩v精品一区二区| 国产片一区二区三区| 国产欧美日产一区| 国产精品久久久久久久久免费樱桃 | 亚洲女同一区二区| 亚洲一区在线播放| 丝袜诱惑亚洲看片| 久久精品国产免费看久久精品| 久久99最新地址| 丁香六月综合激情| 91同城在线观看| 欧美亚洲国产一区在线观看网站| 在线观看视频一区二区| 欧美日韩一区三区四区| 337p亚洲精品色噜噜| 欧美r级电影在线观看| 国产亚洲精品bt天堂精选| 国产精品热久久久久夜色精品三区| 国产精品视频线看| 亚洲一区影音先锋| 麻豆成人久久精品二区三区红| 国产又粗又猛又爽又黄91精品| 丰满岳乱妇一区二区三区| 99久久精品国产精品久久| 欧美在线不卡视频| 欧美不卡一区二区三区四区| 国产精品久久午夜| 亚洲第一电影网| 国产一区二区主播在线| 不卡区在线中文字幕| 欧美老女人在线| 国产午夜亚洲精品午夜鲁丝片| 日韩理论片中文av| 日韩av中文字幕一区二区| 国产成人午夜高潮毛片| 欧美亚洲图片小说| 久久久国产精品不卡| 亚洲综合视频在线| 国产原创一区二区三区| 欧美日韩在线观看一区二区| 欧美精品一区二区三区蜜桃| 亚洲人成网站在线| 精品无人码麻豆乱码1区2区| 91啪亚洲精品| 久久综合久久综合九色| 亚洲一区二区美女| 国产盗摄精品一区二区三区在线 | 亚洲伦理在线免费看| 韩国女主播成人在线观看| 色欧美88888久久久久久影院| 日韩欧美的一区| 亚洲精品视频在线看| 国产久卡久卡久卡久卡视频精品| 在线免费观看不卡av| 久久精品亚洲国产奇米99| 日韩不卡手机在线v区| 色伊人久久综合中文字幕| 久久免费精品国产久精品久久久久| 亚洲精品国产精华液| 粉嫩高潮美女一区二区三区| 8v天堂国产在线一区二区| 中文字幕日韩av资源站| 国产一区二区在线影院| 欧美高清hd18日本| 亚洲精品乱码久久久久久久久| 国产乱人伦精品一区二区在线观看 | 日本在线播放一区二区三区| 91日韩精品一区| 国产精品久久久久久久久搜平片| 狠狠久久亚洲欧美| 欧美一区永久视频免费观看| 亚洲一二三四在线| 色综合久久99| 国产精品成人免费在线| 成人一区二区三区中文字幕| 久久亚洲捆绑美女| 日本不卡一区二区三区高清视频| 91免费版在线| 国产精品传媒视频| 不卡av电影在线播放| 国产精品毛片久久久久久久| 国产不卡视频一区二区三区| 久久综合色之久久综合| 国产一区二区三区免费观看| 精品少妇一区二区三区视频免付费 | 精品影视av免费| 日韩一级片在线播放| 日本欧美加勒比视频| 欧美一区二区三区在线| 人人超碰91尤物精品国产| 欧美精品乱码久久久久久按摩 | 日韩一区日韩二区| 不卡的av在线播放| 亚洲三级理论片| 91视视频在线观看入口直接观看www| 国产精品少妇自拍| 成人美女在线观看| 亚洲特黄一级片| 91麻豆国产在线观看| 亚洲综合999| 91精品黄色片免费大全| 毛片一区二区三区| 久久综合久久99| 成人精品一区二区三区四区| 亚洲视频 欧洲视频| 91国产丝袜在线播放| 香蕉乱码成人久久天堂爱免费| 欧美日韩一区二区三区免费看| 天天做天天摸天天爽国产一区| 欧美一区二区在线免费播放 | 国产精品一区专区| 中文字幕在线观看不卡视频| 91婷婷韩国欧美一区二区| 性做久久久久久| 久久综合九色综合久久久精品综合 | 欧美aⅴ一区二区三区视频| 精品久久久久一区二区国产| 国产成人综合自拍| 亚洲黄色录像片| 日韩免费观看高清完整版| 国产·精品毛片| 亚洲精品成人精品456| 日韩视频一区二区|