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

📄 remove-format.js

📁 Typo3, 开源里边最强大的
💻 JS
字号:
/****************************************************************  Copyright notice**  (c) 2005, 2006 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>*  All rights reserved**  This script is part of the TYPO3 project. The TYPO3 project is*  free software; you can redistribute it and/or modify*  it under the terms of the GNU General Public License as published by*  the Free Software Foundation; either version 2 of the License, or*  (at your option) any later version.**  The GNU General Public License can be found at*  http://www.gnu.org/copyleft/gpl.html.*  A copy is found in the textfile GPL.txt and important notices to the license*  from the author is found in LICENSE.txt distributed with these scripts.***  This script 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 General Public License for more details.***  This copyright notice MUST APPEAR in all copies of the script!***************************************************************//* * Remove Format Plugin for TYPO3 htmlArea RTE * * TYPO3 CVS ID: $Id: remove-format.js 1421 2006-04-10 09:27:15Z mundaun $ */RemoveFormat = function(editor) {	this.editor = editor;	var cfg = editor.config;	var actionHandlerFunctRef = RemoveFormat.actionHandler(this);	cfg.registerButton({		id		: "RemoveFormat",		tooltip		: RemoveFormat_langArray["RemoveFormatTooltip"],		image		: editor.imgURL("ed_clean.gif", "RemoveFormat"),		textMode	: false,		action		: actionHandlerFunctRef	});		this.popupWidth = 285;	this.popupHeight = 255;};RemoveFormat.I18N = RemoveFormat_langArray;RemoveFormat._pluginInfo = {	name          : "RemoveFormat",	version       : "1.5",	developer     : "Stanislas Rolland",	developer_url : "http://www.fructifor.ca/",	sponsor       : "Fructifor Inc.",	sponsor_url   : "http://www.fructifor.ca/",	license       : "GPL"};RemoveFormat.actionHandler = function(instance) {	return (function(editor) {		instance.buttonPress(editor);	});};RemoveFormat.prototype.buttonPress = function(editor){	var applyRequestFunctRef = RemoveFormat.applyRequest(this, editor);	editor._popupDialog("plugin://RemoveFormat/removeformat", applyRequestFunctRef, editor, this.popupWidth, this.popupHeight);};RemoveFormat.applyRequest = function(instance,editor){	return(function(param) {		editor.focusEditor();		if (param) {			if (param["cleaning_area"] == "all") {				var html = editor._doc.body.innerHTML;			} else {				var html = editor.getSelectedHTML(); 			}			if(html) {				if (param["html_all"]== true) {					html = html.replace(/<[\!]*?[^<>]*?>/g, "");				} 				if (param["formatting"] == true) {						// remove font, b, strong, i, em, u, strike, span and other tags					var regF1 = new RegExp("<\/?(abbr|acronym|b[^a-zA-Z]|big|cite|code|em[^a-zA-Z]|font|i[^a-zA-Z]|q|s[^a-zA-Z]|samp|small|span|strike|strong|sub|sup|u[^a-zA-Z]|var)[^>]*>", "gi"); 					html = html.replace(regF1, "");						// keep tags, strip attributes					var regF2 = new RegExp(" style=\"[^>\"]*\"", "gi");					var regF3 = new RegExp(" (class|align|cellpadding|cellspacing|frame|bgcolor)=(([^>\s\"]+)|(\"[^>\"]*\"))", "gi");					html = html.replace(regF2, "").replace(regF3, "");				}				if (param["images"] == true) {						// remove any IMG tag					html = html.replace(/<\/?img[^>]*>/gi, ""); //remove img tags												}				if (param["ms_formatting"] == true) {						// make one line					var regMS1 = new RegExp("(\r\n|\n|\r)", "g"); 					html = html.replace(regMS1, " ");						//clean up tags					var regMS2 = new RegExp("<(b[^r]|strong|i|em|p|li|ul) [^>]*>", "gi");					html = html.replace(regMS2, "<$1>");						// keep tags, strip attributes					var regMS3 = new RegExp(" style=\"[^>\"]*\"", "gi");					var regMS4 = new RegExp(" (class|align)=(([^>\s\"]+)|(\"[^>\"]*\"))", "gi");					html = html.replace(regMS3, "").replace(regMS4, "");						// mozilla doesn't like <em> tags					html = html.replace(/<em>/gi, "<i>").replace(/<\/em>/gi, "</i>");						// kill unwanted tags: span, div, ?xml:, st1:, [a-z]: 					html = html.replace(/<\/?span[^>]*>/gi, "").						replace(/<\/?div[^>]*>/gi, "").						replace(/<\?xml:[^>]*>/gi, "").						replace(/<\/?st1:[^>]*>/gi, "").						replace(/<\/?[a-z]:[^>]*>/g, "");						// remove comments					html = html.replace(/<!--[^>]*>/gi, "");						// remove double tags					oldlen = html.length + 1;					var reg6 = new RegExp("<([a-z][a-z]*)> *<\/\1>", "gi");					var reg7 = new RegExp("<([a-z][a-z]*)> *<\/?([a-z][^>]*)> *<\/\1>", "gi");					var reg8 = new RegExp("<([a-z][a-z]*)><\1>", "gi");					var reg9 = new RegExp("<\/([a-z][a-z]*)><\/\1>", "gi");					var reg10 = new RegExp("[\x20]+", "gi"); 					while(oldlen > html.length) {						oldlen = html.length;							// join us now and free the tags						html = html.replace(reg6, " ").replace(reg7, "<$2>");							// remove double tags						html = html.replace(reg8, "<$1>").replace(reg9, "<\/$1>");							// remove double spaces						html = html.replace(reg10, " ");					}				}				if (param["cleaning_area"] == "all") { 				 							editor._doc.body.innerHTML = html;				} else { 					editor.insertHTML(html);				}			}		} else {			return false;		}	});};

⌨️ 快捷键说明

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