Est-il un moyen de garder execCommand(“insertHTML”) à partir de suppression d'attributs dans chrome?
Contexte est Chrome 37.0.2062.120 m.
Je suis en utilisant execCommand pour insérer du code html dans un modifiable div. Mon execCommand appel ressemble à ceci:
function insertHTML(){
document.execCommand('insertHTML', false, '<span id="myId">hi</span>');
}
Lorsque l'modifiable div ressemble à ceci:
<div contenteditable="true">
some [insertion point] content
</div>
et j'utilise execCommand pour insérer du code html dans un contenteditable div, tous les attributs de l'HTML sont insérés comme prévu et je me retrouve avec ceci:
<div contenteditable="true">
some <span id="myId">hi</span> content
</div>
Cependant, lorsque j'insère exactement le même code html dans cette structure:
<div contenteditable="true">
some content
<div>more [insertion point] content</div>
</div>
Les attributs sont retirés de la durée de l'insertion et elle finit par ressembler à ceci:
<div contenteditable="true">
some content
<div>more <span style="font-size: 10pt;">hi</span> content</div>
</div>
Est-il un moyen pour éviter cela?
OriginalL'auteur sonicblis | 2014-09-19
Vous devez vous connecter pour publier un commentaire.
Une solution pourrait être de ne pas utiliser de durée, c'est à dire utiliser un non-durée de l'élément. J'ai utilisé le "bootstrap" élément "" au lieu de cela, pour résoudre un problème similaire avec google Chrome, parce que l'italique est très bien par moi - et comme une conséquence de la tripoter "bug" dans Chrome ne me touche pas. Voir la discussion ici: Discussion re CKEdit bug, mais ici aussi
OriginalL'auteur Soferio