百度Ueditor編輯器的Html模式自動替換樣式的解決方法
阿新 • • 發佈:2017-10-18
tor tail classname 功能 lai empty als 包含 emp
百度的Ueditor編輯器出於安全性考慮,用戶在html模式下粘貼進去的html文檔會自動被去除樣式和轉義。雖然安全的,但是非常不方便。
做一下修改把這個功能去掉。
一、打開ueditor.all.js
二、大概9300行找到 ///plugin 編輯器默認的過濾轉換機制,把下面的
[javascript] view plain copy- ‘allowDivTransToP‘:true
值改成false。為true的時候會自動把div轉成p。
三、大概9429行,有個case ‘li‘,這個是把li裏面的樣式去掉,把這個case註釋掉。
四、大概14058行,下面的第一個utils.each功能註釋掉,這個是自動給li裏面的內容增加一個p。
五、大概14220行,
[javascript] view plain copy- node.className = utils.trim(node.className.replace(/list-paddingleft-\w+/,‘‘)) + ‘ list-paddingleft-‘ + type;
註釋掉,這個是自動給ul增加一個內置的樣式。
下面的14222行
[javascript] view plain copy- li.style.cssText && (li.style.cssText = ‘‘);
註釋掉,這個是自動去除粘貼進去的代碼的li的style樣式
六、大概9327行和9471行附近的
[javascript] view plain copy- else if (node.tagName == ‘span‘ && (!node.attrs || utils.isEmptyObject(node.attrs))) {
- node.parentNode.removeChild(node, true)
- }
去掉,這是代碼中如果有類似<span>文字</span>這樣的不包含樣式的<span>元素將會被刪掉<span>只保留文字。
至此,我們粘貼進去的html格式的ul和li就不會被轉義了。
PS:以上版本修改基於1.3.6版本。新版本位置可能有變動或者已經解決此問題。
百度Ueditor編輯器的Html模式自動替換樣式的解決方法