contentEditable div仅允许TEXT和IMG标记

时间:2011-09-14 13:03:49

标签: javascript cross-browser contenteditable

如果我有contentEditable div,我可以删除除IMG以外的所有HTML元素和特定类。我问了一个问题,但我遇到了麻烦。问题是,Google Chrome使用div作为换行符/分隔符,Internet Explorer使用p,而Mozilla Firefox仅使用<br>

除了来自contentEditable div的图像和保留所有浏览器的行之外,如何删除所有HTML元素?

我用过:

   var element = document.getElementById("myDiv");
   for(var i=0; i<element.children.length;i++)
   {
     if(element.children[i].tagName != "IMG" || 
        element.children[i].className != "requiredClassName")
     {
       element.insertBefore(document.createTextNode(element.children[i].innerHTML.replace(/<\/?.*?\/?>/gi, ''), element.children[i]);
       element.children[i].parentNode.removeChild(element.children[i]);
     }
   }

但它会导致IE和Chrome出现问题,它会删除所有行,并且所有文字都会排成一行。

我只需要纯JavaScript代码。

0 个答案:

没有答案