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

📄 wordwindow.js

📁 公司企业网站管理系统全站源码,用于企业内部对网站的管理
💻 JS
字号:
////////////////////////////////////////////////////// wordWindow object////////////////////////////////////////////////////function wordWindow() {	// private properties	this._forms = [];	// private methods	this._getWordObject = _getWordObject;	//this._getSpellerObject = _getSpellerObject;	this._wordInputStr = _wordInputStr;	this._adjustIndexes = _adjustIndexes;	this._isWordChar = _isWordChar;	this._lastPos = _lastPos;		// public properties	this.wordChar = /[a-zA-Z]/;	this.windowType = "wordWindow";	this.originalSpellings = new Array();	this.suggestions = new Array();	this.checkWordBgColor = "pink";	this.normWordBgColor = "white";	this.text = "";	this.textInputs = new Array();	this.indexes = new Array();	//this.speller = this._getSpellerObject();	// public methods	this.resetForm = resetForm;	this.totalMisspellings = totalMisspellings;	this.totalWords = totalWords;	this.totalPreviousWords = totalPreviousWords;	//this.getTextObjectArray = getTextObjectArray;	this.getTextVal = getTextVal;	this.setFocus = setFocus;	this.removeFocus = removeFocus;	this.setText = setText;	//this.getTotalWords = getTotalWords;	this.writeBody = writeBody;	this.printForHtml = printForHtml;}function resetForm() {	if( this._forms ) {		for( var i = 0; i < this._forms.length; i++ ) {			this._forms[i].reset();		}	}	return true;}function totalMisspellings() {	var total_words = 0;	for( var i = 0; i < this.textInputs.length; i++ ) {		total_words += this.totalWords( i );	}	return total_words;}function totalWords( textIndex ) {	return this.originalSpellings[textIndex].length;}function totalPreviousWords( textIndex, wordIndex ) {	var total_words = 0;	for( var i = 0; i <= textIndex; i++ ) {		for( var j = 0; j < this.totalWords( i ); j++ ) {			if( i == textIndex && j == wordIndex ) {				break;			} else {				total_words++;			}			}	}	return total_words;}//function getTextObjectArray() {//	return this._form.elements;//}function getTextVal( textIndex, wordIndex ) {	var word = this._getWordObject( textIndex, wordIndex );	if( word ) {		return word.value;	}}function setFocus( textIndex, wordIndex ) {	var word = this._getWordObject( textIndex, wordIndex );	if( word ) {		if( word.type == "text" ) {			word.focus();			word.style.backgroundColor = this.checkWordBgColor;		}	}}function removeFocus( textIndex, wordIndex ) {	var word = this._getWordObject( textIndex, wordIndex );	if( word ) {		if( word.type == "text" ) {			word.blur();			word.style.backgroundColor = this.normWordBgColor;		}	}}function setText( textIndex, wordIndex, newText ) {	var word = this._getWordObject( textIndex, wordIndex );	var beginStr;	var endStr;	if( word ) {		var pos = this.indexes[textIndex][wordIndex];		var oldText = word.value;		// update the text given the index of the string		beginStr = this.textInputs[textIndex].substring( 0, pos );		endStr = this.textInputs[textIndex].substring( 			pos + oldText.length, 			this.textInputs[textIndex].length 		);		this.textInputs[textIndex] = beginStr + newText + endStr;				// adjust the indexes on the stack given the differences in 		// length between the new word and old word. 		var lengthDiff = newText.length - oldText.length;		this._adjustIndexes( textIndex, wordIndex, lengthDiff );				word.size = newText.length;		word.value = newText;		this.removeFocus( textIndex, wordIndex );	}}function writeBody() {	var d = window.document;	var is_html = false;	d.open();	// iterate through each text input.	for( var txtid = 0; txtid < this.textInputs.length; txtid++ ) {			var end_idx = 0;		var begin_idx = 0;			d.writeln( '<form name="textInput'+txtid+'">' );		var wordtxt = this.textInputs[txtid];		this.indexes[txtid] = [];		if( wordtxt ) {						var orig = this.originalSpellings[txtid];			if( !orig ) break;			//!!! plain text, or HTML mode?			d.writeln( '<div class="plainText">' );			// iterate through each occurrence of a misspelled word. 			for( var i = 0; i < orig.length; i++ ) {				// find the position of the current misspelled word,				// starting at the last misspelled word. 				// and keep looking if it's a substring of another word				do {					begin_idx = wordtxt.indexOf( orig[i], end_idx );					end_idx = begin_idx + orig[i].length;					// word not found? messed up!					if( begin_idx == -1 ) break; 					// look at the characters immediately before and after 					// the word. If they are word characters we'll keep looking.					var before_char = wordtxt.charAt( begin_idx - 1 );					var after_char = wordtxt.charAt( end_idx );				} while ( 					this._isWordChar( before_char ) 					|| this._isWordChar( after_char )				);				// keep track of its position in the original text. 				this.indexes[txtid][i] = begin_idx;				// write out the characters before the current misspelled word				for( var j = this._lastPos( txtid, i ); j < begin_idx; j++ ) {					// !!! html mode? make it html compatible					d.write( this.printForHtml( wordtxt.charAt( j )));				}				// write out the misspelled word. 				d.write( this._wordInputStr( orig[i] ));				// if it's the last word, write out the rest of the text				if( i == orig.length-1 ){					d.write( printForHtml( wordtxt.substr( end_idx )));				}						}			d.writeln( '</div>' );					}		d.writeln( '</form>' );	}	//for ( var j = 0; j < d.forms.length; j++ ) {	//	alert( d.forms[j].name );	//	for( var k = 0; k < d.forms[j].elements.length; k++ ) {	//		alert( d.forms[j].elements[k].name + ": " + d.forms[j].elements[k].value );	//	}	//}			// set the _forms property	this._forms = d.forms;	d.close();}// return the character index in the full text after the last word we evaluatedfunction _lastPos( txtid, idx ) {	if( idx > 0 )		return this.indexes[txtid][idx-1] + this.originalSpellings[txtid][idx-1].length;	else		return 0;}function printForHtml( n ) {	return n ;		// by FredCK		var htmlstr = n;	if( htmlstr.length == 1 ) {		// do simple case statement if it's just one character		switch ( n ) {			case "\n":				htmlstr = '<br/>';				break;			case "<":				htmlstr = '&lt;';				break;			case ">":				htmlstr = '&gt;';				break;		}		return htmlstr;	} else {		htmlstr = htmlstr.replace( /</g, '&lt' );		htmlstr = htmlstr.replace( />/g, '&gt' );		htmlstr = htmlstr.replace( /\n/g, '<br/>' );		return htmlstr;	}}function _isWordChar( letter ) {	if( letter.search( this.wordChar ) == -1 ) {		return false;	} else {		return true;	}}function _getWordObject( textIndex, wordIndex ) {	if( this._forms[textIndex] ) {		if( this._forms[textIndex].elements[wordIndex] ) {			return this._forms[textIndex].elements[wordIndex];		}	}	return null;}function _wordInputStr( word ) {	var str = '<input readonly ';	str += 'class="blend" type="text" value="' + word + '" size="' + word.length + '">';	return str;}function _adjustIndexes( textIndex, wordIndex, lengthDiff ) {	for( var i = wordIndex + 1; i < this.originalSpellings[textIndex].length; i++ ) {		this.indexes[textIndex][i] = this.indexes[textIndex][i] + lengthDiff;	}}

⌨️ 快捷键说明

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