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

📄 codeins.htm

📁 这个版本只是修正了一些BUG
💻 HTM
字号:
<script language="JavaScript">
 //--------------------------------------------
// Set up our simple tag open values
//--------------------------------------------
var B_open = 0;
var I_open = 0;
var U_open = 0;
var QUOTE_open = 0;
var CODE_open = 0;
var SQL_open = 0;
var HTML_open = 0;

// ---- 提示变量
var text_enter_image = '{lang text_enter_image}';
var text_enter_email = '{lang text_enter_email}';
var text_enter_url = '{lang text_enter_url}';
var text_enter_url_name = '{lang text_enter_url_name}';
var prompt_start = '{lang text_prompt_start}';
var list_prompt = '{lang text_list_prompt}';

var bbtags   = new Array();

var myAgent   = navigator.userAgent.toLowerCase();
var myVersion = parseInt(navigator.appVersion);

var is_ie   = ((myAgent.indexOf("msie") != -1)  && (myAgent.indexOf("opera") == -1));
var is_nav  = ((myAgent.indexOf('mozilla')!=-1) && (myAgent.indexOf('spoofer')==-1)
                && (myAgent.indexOf('compatible') == -1) && (myAgent.indexOf('opera')==-1)
                && (myAgent.indexOf('webtv') ==-1)       && (myAgent.indexOf('hotjava')==-1));

var is_win   =  ((myAgent.indexOf("win")!=-1) || (myAgent.indexOf("16bit")!=-1));
var is_mac    = (myAgent.indexOf("mac")!=-1);

// Set the initial radio button status based on cookies

var allcookies = document.cookie;
var pos = allcookies.indexOf("bbmode=");

prep_mode();

function prep_mode()
{
	if (pos != 1) {
		var cstart = pos + 7;
		var cend   = allcookies.indexOf(";", cstart);
		if (cend == -1) { cend = allcookies.length; }
		cvalue = allcookies.substring(cstart, cend);

		if (cvalue == 'ezmode') {
			document.REPLIER.bbmode[0].checked = true;
		} else {
			document.REPLIER.bbmode[1].checked = true;
		}
	}
	else {
		// default to normal mode.
		document.REPLIER.bbmode[1].checked = true;
	}
}

function setmode(mVal)
{
	document.cookie = "bbmode="+mVal+"; path=/; expires=Wed, 1 Jan 2020 00:00:00 GMT;";
}

function get_easy_mode_state()
{
	// Returns true if we've chosen easy mode

	if (document.REPLIER.bbmode[0].checked) {
		return true;
	}
	else {
		return false;
	}
}

//--------------------------------------------
// Set the help bar status
//--------------------------------------------

function hstat(msg)
{
	document.REPLIER.helpbox.value = eval( "help_" + msg );
}

// Set the number of tags open box

function cstat()
{
	var c = stacksize(bbtags);

	if ( (c < 1) || (c == null) ) {
		c = 0;
	}

	if ( ! bbtags[0] ) {
		c = 0;
	}

	document.REPLIER.tagcount.value = c;
}

//--------------------------------------------
// Get stack size
//--------------------------------------------

function stacksize(thearray)
{
	for (i = 0 ; i < thearray.length; i++ ) {
		if ( (thearray[i] == "") || (thearray[i] == null) || (thearray == 'undefined') ) {
			return i;
		}
	}

	return thearray.length;
}

//--------------------------------------------
// Push stack
//--------------------------------------------

function pushstack(thearray, newval)
{
	arraysize = stacksize(thearray);
	thearray[arraysize] = newval;
}

//--------------------------------------------
// Pop stack
//--------------------------------------------

function popstack(thearray)
{
	arraysize = stacksize(thearray);
	theval = thearray[arraysize - 1];
	delete thearray[arraysize - 1];
	return theval;
}


//--------------------------------------------
// Close all tags
//--------------------------------------------

function closeall()
{
	if (bbtags[0]) {
		while (bbtags[0]) {
			tagRemove = popstack(bbtags)
			document.REPLIER.Post.value += "[/" + tagRemove + "]";

			// Change the button status
			// Ensure we're not looking for FONT, SIZE or COLOR as these
			// buttons don't exist, they are select lists instead.

			if ( (tagRemove != 'FONT') && (tagRemove != 'SIZE') && (tagRemove != 'COLOR') )
			{
				eval("document.REPLIER." + tagRemove + ".value = ' " + tagRemove + " '");
				eval(tagRemove + "_open = 0");
			}
		}
	}

	// Ensure we got them all
	document.REPLIER.tagcount.value = 0;
	bbtags = new Array();
	document.REPLIER.Post.focus();
}

//--------------------------------------------
// ADD CODE
//--------------------------------------------

function add_code(NewCode)
{
    document.REPLIER.Post.value += NewCode;
    document.REPLIER.Post.focus();
}

//--------------------------------------------
// ALTER FONT
//--------------------------------------------

function alterfont(theval, thetag)
{
    if (theval == 0)
    	return;

	if(doInsert("[" + thetag + "=" + theval + "]", "[/" + thetag + "]", true))
		pushstack(bbtags, thetag);

    document.REPLIER.ffont.selectedIndex  = 0;
    document.REPLIER.fsize.selectedIndex  = 0;
    document.REPLIER.fcolor.selectedIndex = 0;

}


//--------------------------------------------
// SIMPLE TAGS (such as B, I U, etc)
//--------------------------------------------

function simpletag(thetag)
{
	var tagOpen = eval(thetag + "_open");

	if ( get_easy_mode_state() ) {
		inserttext = prompt(prompt_start + "\n[" + thetag + "]xxx[/" + thetag + "]");
		if ( (inserttext != null) && (inserttext != "") ) {
			doInsert("[" + thetag + "]" + inserttext + "[/" + thetag + "] ", "", false);
		}
	}
	else {
		if (tagOpen == 0) {
			if(doInsert("[" + thetag + "]", "[/" + thetag + "]", true)){
				eval(thetag + "_open = 1");
				// Change the button status
				eval("document.REPLIER." + thetag + ".value += '*'");

				pushstack(bbtags, thetag);
				cstat();
				//hstat('click_close');
			}
		}
		else {
			// Find the last occurance of the opened tag
			lastindex = 0;

			for (i = 0 ; i < bbtags.length; i++ ) {
				if ( bbtags[i] == thetag ) {
					lastindex = i;
				}
			}

			// Close all tags opened up to that tag was opened
			while (bbtags[lastindex]) {
				tagRemove = popstack(bbtags);
				doInsert("[/" + tagRemove + "]", "", false)

				// Change the button status
				eval("document.REPLIER." + tagRemove + ".value = ' " + tagRemove + " '");
				eval(tagRemove + "_open = 0");
			}

			cstat();
		}
	}
}


function tag_list()
{
	var listvalue = "init";
	var thelist = "[LIST]\n";

	while ( (listvalue != "") && (listvalue != null) ) {
		listvalue = prompt(list_prompt, "");
		if ( (listvalue != "") && (listvalue != null) ) {
			thelist = thelist+"[*]"+listvalue+"\n";
		}
	}

	doInsert(thelist + "[/LIST]\n", "", false);
}

function tag_url()
{
    var FoundErrors = '';
    var enterURL   = prompt(text_enter_url, "http://");
    var enterTITLE = prompt(text_enter_url_name, "My Webpage");

    if (!enterURL) {
        FoundErrors += " " + error_no_url;
    }
    if (!enterTITLE) {
        FoundErrors += " " + error_no_title;
    }

    if (FoundErrors) {
        alert("Error!"+FoundErrors);
        return;
    }

	doInsert("[URL="+enterURL+"]"+enterTITLE+"[/URL]", "", false);
}

function tag_image()
{
    var FoundErrors = '';

    var enterURL   = prompt(text_enter_image, "http://");

    if (!enterURL) {
        FoundErrors += " " + error_no_url;
    }

    if (FoundErrors) {
        alert("Error!"+FoundErrors);
        return;
    }

	doInsert("[IMG]"+enterURL+"[/IMG]", "", false);
}

function tag_email()
{
    var emailAddress = prompt(text_enter_email, "");

    if (!emailAddress) {
		alert(error_no_email);
		return;
	}

	doInsert("[EMAIL]"+emailAddress+"[/EMAIL]", "", false);
}

//--------------------------------------------
// GENERAL INSERT FUNCTION
//--------------------------------------------
// ibTag: opening tag
// ibClsTag: closing tag, used if we have selected text
// isSingle: true if we do not close the tag right now
// return value: true if the tag needs to be closed later

//

function doInsert(ibTag, ibClsTag, isSingle)
{
	var isClose = false;
	var obj_ta = document.REPLIER.Post;

	if ( (myVersion >= 4) && is_ie && is_win) // Ensure it works for IE4up / Win only
	{
		if(obj_ta.isTextEdit){ // this doesn't work for NS, but it works for IE 4+ and compatible browsers
			obj_ta.focus();
			var sel = document.selection;
			var rng = sel.createRange();
			rng.colapse;
			if((sel.type == "Text" || sel.type == "None") && rng != null){
				if(ibClsTag != "" && rng.text.length > 0)
					ibTag += rng.text + ibClsTag;
				else if(isSingle)
					isClose = true;

				rng.text = ibTag;
			}
		}
		else{
			if(isSingle)
				isClose = true;

			obj_ta.value += ibTag;
		}
	}
	else
	{
		if(isSingle)
			isClose = true;

		obj_ta.value += ibTag;
	}

	obj_ta.focus();

	// clear multiple blanks
//	obj_ta.value = obj_ta.value.replace(/  /, " ");

	return isClose;
}
</script>

<!--<SCRIPT src="./html/code.js" type=text/javascript></SCRIPT>-->
<INPUT type="hidden" value="0" name="st">
<INPUT type="hidden" value="Post" name="act">
<INPUT type="hidden" name="s">
<INPUT type="hidden" value="1" name="f">
<INPUT type="hidden" value="01" name="CODE">

<TR class="line_1">
<TD width="30%" valign='top'>
	<INPUT onclick="setmode(this.value)" type=radio value=ezmode name=bbmode>
	&nbsp;<B>{lang text_mode_ezmode}</B>
	<BR>
	<INPUT onclick=setmode(this.value) type=radio CHECKED value=normal name=bbmode>
	&nbsp;<B>{lang text_mode_normal}</B>
</TD>
<TD>
    	<INPUT accessKey=b onclick='simpletag("B")' type=button value=" B " name=B>
	<INPUT accessKey=i onclick='simpletag("I")' type=button value=" I " name=I>
	<INPUT accessKey=u onclick='simpletag("U")' type=button value=" U " name=U>
      	<SELECT onchange="alterfont(this.options[this.selectedIndex].value, 'FONT')" name=ffont>
      		<OPTION value=0 selected>{lang text_font}</OPTION>
      		<OPTION value="Arial">Arial</OPTION>
      		<OPTION style="FONT-FAMILY: Times" value=Times>Times</OPTION>
      		<OPTION style="FONT-FAMILY: Courier" value=Courier>Courier</OPTION>
      		<OPTION style="FONT-FAMILY: Impact" value=Impact>Impact</OPTION>
      		<OPTION style="FONT-FAMILY: Geneva" value=Geneva>Geneva</OPTION>
      		<OPTION style="FONT-FAMILY: Optima" value=Optima>Optima</OPTION>
      	</SELECT>
      	<SELECT onchange="alterfont(this.options[this.selectedIndex].value, 'SIZE')" name=fsize>
      		<OPTION value=0 selected>{lang text_size}</OPTION>
      		<OPTION value=1>{lang text_color_small}</OPTION>
      		<OPTION value=7>{lang text_size_large}</OPTION>
      		<OPTION value=14>{lang text_size_huge}</OPTION>
      	</SELECT>
      	<SELECT onchange="alterfont(this.options[this.selectedIndex].value, 'COLOR')" name=fcolor>
      		<OPTION value=0 selected>{lang text_color}</OPTION>
      		<OPTION style="COLOR: blue" value=blue>{lang text_color_blue}</OPTION>
      		<OPTION style="COLOR: red"  value=red>{lang text_color_red}</OPTION>
      		<OPTION style="COLOR: purple" value=purple>{lang text_color_purple}</OPTION>
      		<OPTION style="COLOR: orange" value=orange>{lang text_color_orange}</OPTION>
      		<OPTION style="COLOR: yellow" value=yellow>{lang text_color_yellow}</OPTION>
      		<OPTION style="COLOR: gray" value=gray>{lang text_color_gray}</OPTION>
      		<OPTION style="COLOR: green" value=green>{lang text_color_green}</OPTION>
      	</SELECT>
      	<BR>
      	<INPUT accessKey=h onclick="tag_url()" type=button value=" URL " name=url>
	<INPUT accessKey=g onclick="tag_image()" type=button value=" IMG " name=img>
	<INPUT accessKey=e onclick="tag_email()" type=button value="  @  " name=email>
	<INPUT accessKey=q onclick='simpletag("QUOTE")' type=button value=" QUOTE " name=QUOTE>
	<INPUT accessKey=p onclick='simpletag("CODE")' type=button value=" CODE " name=CODE>
	<INPUT accessKey=l onclick=tag_list() type=button value=" LIST " name=LIST>
	<br>
	[<A href="javascript:closeall();">{lang text_tag_closeall}</A>]&nbsp;[{lang text_tag_open}:&nbsp;
	<INPUT style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; FONT-WEIGHT: bold; FONT-SIZE: 12px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" readOnly maxLength=3 size=3 value=0 name=tagcount>]
</TD>
</TR>
<TR class="line_1">
<TD align=middle>
</TD>
<TD vAlign=top>
<TEXTAREA  tabIndex=3 name="Post" rows=20 cols="80">$notes</TEXTAREA>
</TD>
</TR>
 

⌨️ 快捷键说明

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