wangeditor生成带样式的html,wangEditor 粘贴网页代码,被解析成具体样式

能发图片就好了。那我详细说一下是怎么出现的吧!在其他网页上找一个textarea或者input text标签(不是文本),然后复制到编辑器中去。编辑器中显示的是解析过后的,也就是长方形元素。

正确的显示应该是文本,或者直接不能复制进去。

下面是编辑器处理粘贴内容的源码,被我稍稍修改了下。没有出现上面所述问题。

希望作者指导下,这样修改会不会带来其他问题。谢谢作者大大了!

// 处理粘贴的内容

function handle(elem) {

if (!elem || !elem.nodeType || !elem.nodeName) {

return;

}

var $elem;

var nodeName = elem.nodeName.toLowerCase();

var nodeType = elem.nodeType;

var childNodesClone;

// 只处理文本和普通node标签

if (nodeType !== 3 && nodeType !== 1) {

return;

}

$elem = $(elem);

// 如果是容器,则继续深度遍历

if (nodeName === 'div') {

childNodesClone = [];

$.each(elem.childNodes, function (index, item) {

// elem.childNodes 可获取TEXT节点,而 $elem.children() 就获取不到

// 先将 elem.childNodes 拷贝一份,一面在循环递归过程中 elem 发生变化

childNodesClone.push(item);

});

// 遍历子元素,执行操作

$.each(childNodesClone, function () {

handle(this);

});

return;

}

if (legalTagArr.indexOf(nodeName) >= 0) {

// 如果是合法标签之内的,则根据元素类型,获取值

resultHtml += getResult(elem);

} else if (nodeType === 3) {

// 如果是文本,则直接插入 p 标签

resultHtml += '

' + elem.textContent + '

';

} else if (nodeName === 'br') {

//
保留

resultHtml += '
';

}

else {

**//------------------------这里被我修改了------------------------------------

var ignoreTag=[ //这里被我修改了。可以显示

'meta', 'style', 'script', 'object', 'form', 'iframe', 'hr', 'textarea', 'input',

'META', 'STYLE', 'SCRIPT', 'OBJECT', 'FROM', 'IFRAME', 'HR', 'TEXTAREA', 'INPUT'

];

// 忽略的标签

if (ignoreTag.indexOf(nodeName) >= 0) {

return;

}

//------------------------这里被我修改了------------------------------------**

// 其他标签,移除属性,插入 p 标签

$elem = $(removeAttrs(elem));

// 注意,这里的 clone() 是必须的,否则会出错

resultHtml += $('

').append($elem.clone()).html();

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值