wangeditor自帶粘貼文本樣式過濾:
粘貼文本
注意,以下配置暫時對 IE 無效。IE 暫時使用系統自帶的粘貼功能,沒有樣式過濾!
關閉粘貼樣式的過濾
當從其他網頁複製文本內容粘貼到編輯器中,編輯器會默認過濾掉複製文本中自帶的樣式,目的是讓粘貼後的文本變得更加簡潔和輕量。用戶可通過editor.customConfig.pasteFilterStyle = false手動關閉掉粘貼樣式的過濾。
但不知爲何,我的不生效,所以我使用了,自定義處理粘貼的文本內容:
自定義處理粘貼的文本內容
使用者可通過editor.customConfig.pasteTextHandle對粘貼的文本內容進行自定義的過濾、處理等操作,然後返回處理之後的文本內容。編輯器最終會粘貼用戶處理之後並且返回的的內容。
<div id="div1">
<p>歡迎使用 wangEditor 富文本編輯器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 關閉粘貼樣式的過濾
editor.customConfig.pasteFilterStyle = false
// 忽略粘貼內容中的圖片
editor.customConfig.pasteIgnoreImg = true
// 自定義處理粘貼的文本內容
editor.customConfig.pasteTextHandle = function (content) {
// content 即粘貼過來的內容(html 或 純文本),可進行自定義處理然後返回
return content + '<p>在粘貼內容後面追加一行</p>'
}
editor.create()
</script>
我的代碼
// 自定義處理粘貼的文本內容
this.editor.customConfig.pasteTextHandle = function (content) {
// content 即粘貼過來的內容(html 或 純文本),可進行自定義處理然後返回
if (content == '' && !content) return ''
var str = content
str = str.replace(/<xml>[\s\S]*?<\/xml>/ig, '')
str = str.replace(/<style>[\s\S]*?<\/style>/ig, '')
str = str.replace(/<\/?[^>]*>/g, '')
str = str.replace(/[ | ]*\n/g, '\n')
str = str.replace(/ /ig, '')
console.log('****', content)
console.log('****', str)
return str
}