TinyMCE粘贴为纯文本

这是Web上RTE的常见问题之一。您能否指导我完成以下步骤:

  1. 粘贴为纯文本
  2. 保留HTML,但删除WORD / HTML样式

我想直接在粘贴(paste_preprocess回调)上执行此操作,而无需打开粘贴插件提供的对话框。

有什么想法/经验吗?

谢谢,

回答:

这就是我要做的粘贴纯文本。

paste_preprocess : function(pl, o) {

//example: keep bold,italic,underline and paragraphs

//o.content = strip_tags( o.content,'<b><u><i><p>' );

// remove all tags => plain text

o.content = strip_tags( o.content,'' );

},

// Strips HTML and PHP tags from a string 

// returns 1: 'Kevin <b>van</b> <i>Zonneveld</i>'

// example 2: strip_tags('<p>Kevin <img src="someimage.png" onmouseover="someFunction()">van <i>Zonneveld</i></p>', '<p>');

// returns 2: '<p>Kevin van Zonneveld</p>'

// example 3: strip_tags("<a href='http://kevin.vanzonneveld.net'>Kevin van Zonneveld</a>", "<a>");

// returns 3: '<a href='http://kevin.vanzonneveld.net'>Kevin van Zonneveld</a>'

// example 4: strip_tags('1 < 5 5 > 1');

// returns 4: '1 < 5 5 > 1'

function strip_tags (str, allowed_tags)

{

var key = '', allowed = false;

var matches = []; var allowed_array = [];

var allowed_tag = '';

var i = 0;

var k = '';

var html = '';

var replacer = function (search, replace, str) {

return str.split(search).join(replace);

};

// Build allowes tags associative array

if (allowed_tags) {

allowed_array = allowed_tags.match(/([a-zA-Z0-9]+)/gi);

}

str += '';

// Match tags

matches = str.match(/(<\/?[\S][^>]*>)/gi);

// Go through all HTML tags

for (key in matches) {

if (isNaN(key)) {

// IE7 Hack

continue;

}

// Save HTML tag

html = matches[key].toString();

// Is tag not in allowed list? Remove from str!

allowed = false;

// Go through all allowed tags

for (k in allowed_array) { // Init

allowed_tag = allowed_array[k];

i = -1;

if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+'>');}

if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+' ');}

if (i != 0) { i = html.toLowerCase().indexOf('</'+allowed_tag) ;}

// Determine

if (i == 0) { allowed = true;

break;

}

}

if (!allowed) {

str = replacer(html, "", str); // Custom replace. No regexing

}

}

return str;

}

以上是 TinyMCE粘贴为纯文本 的全部内容, 来源链接: utcz.com/qa/416674.html

回到顶部