,javascript,html,css,contenteditable,execcommand"/>

首页 > 解决方案 > 有没有办法从标签中删除斜体样式而不影响 document.execCommand("italic")

问题描述

标签: javascripthtmlcsscontenteditableexeccommand

解决方案


此问题的更多解决方案。

使用 innerText 更改节点

function unitalicize(){
   var element = document.getElementsByTagName("i")[0];
   var span = document.createElement("span");
   while(element.firstChild){
           span.appendChild(element.firstChild);
   }
   element.parentElement.replaceChild(span,element)
}
function italicize(){
  var element = document.getElementsByTagName("span")[0];
  var i = document.createElement("i");
  while(element.firstChild){
     i.appendChild(element.firstChild);
  }
  element.parentElement.replaceChild(i,element)
}
  
i{
  color:red;
}
<div contenteditable=true>a<i>b</i>c</div>

<button onclick=unitalicize()>unitalicize()</button>
<button onclick=italicize()>italicize()</button>


推荐阅读