Je rencontre des problèmes pour faire fonctionner un éditeur HTML. Nous utilisons "contentEditable" pour l'implémenter, cependant quand une option de formatage de paragraphe est faite sans contenu sélectionné, IE supprime l'ID de l'un des divs de la page.Pourquoi ContentEditable supprime-t-il "ID" de div
Le problème se répète pour moi avec le HTML,
- simplement l'enregistrer dans un fichier,
- ouvrir alors dans IE
- permettre JScript lorsqu'on lui a demandé
- Appuyez sur le bouton
- vérifiez que vous obtenez deux boîtes de message
- le premier dit "MainContents = objet"
- secondes on dit « MainContents = NULL »
J'utilise IE 6.0.2900.5512 avec XP SP3
Donc, cela vous répétez?
Que se passe-t-il?
<html>
<head>
</head>
<body id="BODY">
<div contentEditable="true" id="EDITBOX">
</div>
<div id="MAINCONTENTS" unselectable="on">
<button title="Ordered List" unselectable="on"
onclick='alert("MainContents = " + document.getElementById("MAINCONTENTS"));
document.execCommand("InsertOrderedList");
alert("MainContents = " + document.getElementById("MAINCONTENTS"));
'>
Push Me
</button>
</div>
</body>
</html>
<script type="text/javascript">
document.getElementById("EDITBOX").focus();
</script>
Contexte Je travaille pour un éditeur de logiciels qui vendent des logiciels aux entreprises, à l'heure actuelle tous nos clients utilisent IE et il n'y a pas de marché dépendent de soutenir d'autres navigateurs. On m'a dit d'implémenter un éditeur HTML en utilisant contentEditable. Toutes les options de formatage sont basées sur document.execCommand(), par ex. document.execCommand ("bold");
En raison de restrictions de licence (LGPL n'est pas aimé) et/ou le coût, il est très difficile d'obtenir l'approbation d'utiliser un éditeur HTML tiers. Il nous a fallu un temps de connexion juste pour pouvoir utiliser jquery.
L'éditeur travaille indépendamment des commandes de formatage de paragraphe lorsque l'utilisateur n'a aucun élément sélectionné. Le code HTML que j'ai posté est un petit peu de HTML que j'ai écrit pour reproduire le problème que j'ai.
voir aussi http://www.maconstateit.net/tutorials/JSDHTML/JSDHTML12/jsdhtml12-02.htm et Risk of using contentEditable in IE
Merci, je viens de changer mon code pour utiliser MAINCONTENTS au lieu de MainContents, cela ne supprime pas le problème. –