⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 edit.js

📁 动网新闻.Net  版权所有:动网工作室-木鸟 程序制作:木鸟
💻 JS
📖 第 1 页 / 共 4 页
字号:
	
	editor.document.body.innerHTML = html;
}

function WBTB_FilterScript(content)
{
	content = WBTB_rCode(content, 'javascript:', 'javascript :');
	//var RegExp = /<script[^>]*>(.|\n)*<\/script>/ig;
	//content = content.replace(RegExp, "<!-- Script Filtered -->");
	var RegExp = /<script[^>]*>/ig;
	content = content.replace(RegExp, "<!-- Script Filtered/n");
	RegExp = /<\/script>/ig;
	content = content.replace(RegExp, "/n-->");
	return content;
}

function WBTB_cleanHtml()
{
	var fonts = WBTB_Composition.document.body.all.tags("FONT");
	var curr;
	for (var i = fonts.length - 1; i >= 0; i--) {
		curr = fonts[i];
		if (curr.style.backgroundColor == "#ffffff") curr.outerHTML = curr.innerHTML;
	}
}

function WBTB_getPureHtml()
{
	var str = "";
	//var paras = WBTB_Composition.document.body.all.tags("P");
	//if (paras.length > 0){
	//  for	(var i=paras.length-1; i >= 0; i--) str= paras[i].innerHTML + "\n" + str;
	//} else {
	str = WBTB_Composition.document.body.innerHTML;
	//}
	str=WBTB_correctUrl(str);
	return str;
}


function WBTB_correctUrl(cont)
{
	var url=location.href.substring(0,location.href.lastIndexOf("/")+1);
	cont=WBTB_rCode(cont,location.href+"#","#");
	cont=WBTB_rCode(cont,url,"");
	return cont;
}

var WBTB_bLoad=false
var WBTB_pureText=true
var WBTB_bTextMode=false

WBTB_public_description=new WBTB_Editor

function WBTB_Editor()
{
	this.put_HtmlMode=WBTB_setMode;
	this.put_value=WBTB_putText;
	this.get_value=WBTB_getText;
}

function WBTB_getText()
{
	if (WBTB_bTextMode)
		return WBTB_Composition.document.body.innerText;
	else
	{
		WBTB_cleanHtml();
		return WBTB_Composition.document.body.innerHTML;
	}
}

function WBTB_putText(v)
{
	if (WBTB_bTextMode)
		WBTB_Composition.document.body.innerText = v;
	else
		WBTB_Composition.document.body.innerHTML = v;
}

function WBTB_InitDocument(hiddenid, charset)
{	
	if (charset!=null)
		WBTB.Charset=charset;
	var WBTB_bodyTag="<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html><head><title>DvNews Editor</title><style type=\"text/css\">\r\n.quote{margin:5px 20px;border:1px solid #CCCCCC;padding:5px; background:#F3F3F3 }\r\nbody{boder:0px}</style>\r\n</head><body>";
	var editor=WBTB_Composition;
	var h=document.getElementById(hiddenid);
	editor.document.designMode="On"
	editor.document.open();
	editor.document.write(WBTB_bodyTag);
	if (h.value!="")
	{
		editor.document.write(h.value);
	}
	editor.document.write("\r\n</body>\r\n</html>");
	editor.document.close();
	editor.document.body.contentEditable = "True";
	editor.document.charset=WBTB.Charset;
	
	WBTB_bLoad=true;
	WBTB_setStyle();
}


function WBTB_doSelectClick(str, el) {
	var Index = el.selectedIndex;
	if (Index != 0){
		el.selectedIndex = 0;
		WBTB_format(str,el.options[Index].value);
	}
}

var WBTB_bIsIE5 = (navigator.userAgent.indexOf("IE 5")  > -1) || (navigator.userAgent.indexOf("IE 6")  > -1);
var WBTB_edit;	//selectRang
var WBTB_RangeType;
var WBTB_selection;

//应用html
function WBTB_specialtype(Mark1, Mark2){
	var strHTML;
	if (WBTB_bIsIE5) WBTB_selectRange();
	if (WBTB_RangeType == "Text"){
		if (Mark2==null)
		{
			strHTML = "<" + Mark1 + ">" + WBTB_edit.htmlText + "</" + Mark1 + ">"; 
		}else{
			strHTML = Mark1 + WBTB_edit.htmlText +  Mark2; 
		}
		WBTB_edit.pasteHTML(strHTML);
		WBTB_Composition.focus();
		WBTB_edit.select();
	}		
}

//选择内容替换文本
function WBTB_InsertHtml(str1)
{
	WBTB_Composition.focus();
	if (WBTB_bIsIE5) WBTB_selectRange();	
	WBTB_edit.pasteHTML(str1);
}


function WBTB_selectRange(){
	WBTB_selection = WBTB_Composition.document.selection;
	WBTB_edit = WBTB_Composition.document.selection.createRange();
	WBTB_RangeType =  WBTB_Composition.document.selection.type;
}

function WBTB_rCode(s,a,b,i){
	//s原字串,a要换掉pattern,b换成字串,i是否区分大小写
	a = a.replace("?","\\?");
	if (i==null)
	{
		var r = new RegExp(a,"gi");
	}else if (i) {
		var r = new RegExp(a,"g");
	}
	else{
		var r = new RegExp(a,"gi");
	}
	return s.replace(r,b); 
}


// show/hide Gridlines
function WBTB_showGridlines() {
	if (!WBTB_validateMode()) return;
	
	var allForms = WBTB_Composition.document.body.getElementsByTagName("FORM");
	var allInputs = WBTB_Composition.document.body.getElementsByTagName("INPUT");
	var allTables = WBTB_Composition.document.body.getElementsByTagName("TABLE");
	var allLinks = WBTB_Composition.document.body.getElementsByTagName("A");

	// 表单
	for (a=0; a < allForms.length; a++) {
		if (!WBTB.ShowGridlines) {
			allForms[a].runtimeStyle.border = "1px dotted #FF0000"
		} else {
			allForms[a].runtimeStyle.cssText = ""
		}
	}

	// Input Hidden类
	for (b=0; b < allInputs.length; b++) {
		if (!WBTB.ShowGridlines) {
			if (allInputs[b].type.toUpperCase() == "HIDDEN") {
				allInputs[b].runtimeStyle.border = "1px dashed #000000"
				allInputs[b].runtimeStyle.width = "15px"
				allInputs[b].runtimeStyle.height = "15px"
				allInputs[b].runtimeStyle.backgroundColor = "#FDADAD"
				allInputs[b].runtimeStyle.color = "#FDADAD"
			}
		} else {
			if (allInputs[b].type.toUpperCase() == "HIDDEN")
				allInputs[b].runtimeStyle.cssText = ""
		}
	}

	// 表格
	for (i=0; i < allTables.length; i++) {
			if (!WBTB.ShowGridlines) {
				allTables[i].runtimeStyle.border = "1px dotted #BFBFBF"
			} else {
				allTables[i].runtimeStyle.cssText = ""
			}

			allRows = allTables[i].rows
			for (y=0; y < allRows.length; y++) {
			 	allCellsInRow = allRows[y].cells
					for (x=0; x < allCellsInRow.length; x++) {
						if (WBTB.ShowGridlines == "0") {
							allCellsInRow[x].runtimeStyle.border = "1px dotted #BFBFBF"
						} else {
							allCellsInRow[x].runtimeStyle.cssText = ""
						}
					}
			}
	}

	// 链接 A
	for (a=0; a < allLinks.length; a++) {
		if (WBTB.ShowGridlines == "0") {
			if (allLinks[a].href.toUpperCase() == "") {
				allLinks[a].runtimeStyle.borderBottom = "1px dashed #000000"
			}
		} else {
			allLinks[a].runtimeStyle.cssText = ""
		}
	}

	if (!WBTB.ShowGridlines) {
		WBTB.ShowGridlines = true
	} else {
		WBTB.ShowGridlines = false
	}

}


function WBTB_View()
{
	if (WBTB_bTextMode) {
		cont=WBTB_Composition.document.body.innerText;
	} else {
		cont=WBTB_Composition.document.body.innerHTML;
	}
	cont=WBTB_correctUrl(cont);
	bodyTag="<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html><head><title>DvNews Perview</title><style type=\"text/css\">\r\n.quote{margin:5px 20px;border:1px solid #CCCCCC;padding:5px; background:#F3F3F3 }\r\nbody{boder:0px; font-family:Arial; font-size:10.5pt}</style></head><body>";
	if (WBTB.filterScript)
		cont=WBTB_FilterScript(cont);
	cont=WBTB_rCode(cont,"\\[dvnews_ad]","<img src='wbTextBox/images/pic_ad.jpg' vspace='10' hspace='10' align='left' border='1' title='Advertising' alt=''/>");
	cont=WBTB_rCode(cont,"\\[dvnews_page]","<br/><br/><hr size='2' width='95%' align='left'/>&nbsp; <font color='red' face='Tahoma,Arail' size='2'><strong>Next Page ...</strong></font><br/><hr size='2' width='95%' align='left'/>");
	preWin=window.open('preview','','left=0,top=0,width=550,height=400,resizable=1,scrollbars=1, status=1, toolbar=1, menubar=0');
	preWin.document.open();
	preWin.document.write(bodyTag);
	preWin.document.write(cont);
	preWin.document.write("\r\n</body>\r\n</html>");
	preWin.document.close();
	preWin.document.title="Preview";
	preWin.document.charset=WBTB.Charset;
}


// 修改编辑栏高度
function WBTB_Size(num)
{
	var obj=document.all.WBTB_Container;
	if (parseInt(obj.height)+num>=300) {
		obj.height = parseInt(obj.height) + num;	
	}
	if (num>0)
	{
		obj.width="100%";	
	}
}

// 拷贝数据到hidden
function WBTB_CopyData(hiddenid)
{
	d = WBTB_Composition.document;
	if (WBTB_bTextMode)
	{
		cont=d.body.innerText;
	}else{
		try{
			cont=WBTBXHTML.GetXHTML(d.body)
		}catch(e){
			cont=d.body.innerHTML;
		}
	}
	cont=WBTB_correctUrl(cont);
	if (WBTB.filterScript)
		cont=WBTB_FilterScript(cont);
	document.getElementById(hiddenid).value = cont;  
	if (document.getElementById(hiddenid).value == '<p>&nbsp;</p>')
	{
		document.getElementById(hiddenid).value = '';
	}
}

// xhtml object
var WBTBXHTML=new Object();
WBTBXHTML.GetXHTML=function(node){
	if (window.ActiveXObject)
		this.XML=new ActiveXObject('Msxml2.DOMDocument');
	else{
		this.XML=document.implementation.createDocument('', '', null);
		Node.prototype.__defineGetter__('xml', WBTBXHTML._Node_getXML);
	};
	this.MainNode=this.XML.appendChild(this.XML.createElement( 'XHTML' ));
	this._AppendChildNodes(this.MainNode, node);
	var sXHTML=this.MainNode.xml;
	return sXHTML.substr(7, sXHTML.length - 15);
};
WBTBXHTML._Node_getXML=function(){
	var oSerializer=new XMLSerializer();
	return oSerializer.serializeToString(this);
};
WBTBXHTML._AppendAttribute=function(xmlNode, attributeName, attributeValue){
	var oXmlAtt=this.XML.createAttribute(attributeName);
	if (typeof( attributeValue )=='boolean' && attributeValue == true)
		oXmlAtt.value=attributeName;
	else
		oXmlAtt.value=attributeValue;
	xmlNode.attributes.setNamedItem(oXmlAtt);
};
WBTBXHTML._AppendChildNodes=function(xmlNode, htmlNode){
	var oChildren=htmlNode.childNodes;
	var i=0;
	while (i < oChildren.length){
		i +=this._AppendNode(xmlNode, oChildren[i]);
	};
};
WBTBXHTML._AppendNode=function(xmlNode, htmlNode){
	var iAddedNodes=1;
	switch (htmlNode.nodeType){
		case 1 : var sNodeName=htmlNode.nodeName.toLowerCase();
			var oNode=xmlNode.appendChild(this.XML.createElement( sNodeName ));
			var oAttributes=htmlNode.attributes;
		for (var n=0 ; n < oAttributes.length ; n++){
			var oAttribute=oAttributes[n];
			if (oAttribute.specified)
				this._AppendAttribute(oNode, oAttribute.nodeName.toLowerCase(), oAttribute.nodeValue);
		};
		switch (sNodeName){
			case "script" : case "style" : oNode.appendChild(this.XML.createCDATASection( htmlNode.text ));break;
			case "abbr" : if (document.all){var oNextNode=htmlNode.nextSibling;
				while (true){
					iAddedNodes++;
					if (oNextNode && oNextNode.nodeName !='/ABBR'){
						this._AppendNode(oNode, oNextNode);
						oNextNode=oNextNode.nextSibling;
					}else
						break;
				};
				break;
			};
			case "area" : if (document.all && ! oNode.attributes.getNamedItem( 'coords' )){var sCoords=htmlNode.getAttribute('coords', 2);if (sCoords && sCoords !='0,0,0') this._AppendAttribute(oNode, 'coords', sCoords);};
			case "img" : if (! oNode.attributes.getNamedItem( 'alt' )) this._AppendAttribute(oNode, 'alt', '');
			default : this._AppendChildNodes(oNode, htmlNode);
			break;
		};
		break;
		case 3 : xmlNode.appendChild(this.XML.createTextNode( htmlNode.nodeValue ));break;
		default : xmlNode.appendChild(this.XML.createComment( "Element not supported - Type: " + htmlNode.nodeType + " Name: " + htmlNode.nodeName ));break;
	};
	return iAddedNodes;
};


WBTB.GetXHTML=function(){var bSource=WBTB_bTextMode;
	if (bSource) WBTB_setMode();
	var sXHTML=WBTBXHTML.GetXHTML(WBTB_Composition.document.body);
	if (bSource) WBTB_setMode();
	return sXHTML;
};


function WBTB_help()
{
	showModalDialog("wbTextBox/help.html", "", "dialogWidth:13.5em; dialogHeight:11em; status:0; help:0");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -