11
votes

Évitez l'élément content d'IE Créer des paragraphes sur la touche Entrée

sur InternetExexplorer, une div contestable crée un nouveau paragraphe (

) à chaque fois que vous appuyez sur Entrée, tandis que Firefox crée une balise
. Est-il possible de forcer c'est à dire à insérer un
au lieu d'un nouveau paragraphe?


0 commentaires

5 Réponses :


7
votes

Oui, il est possible d'éviter l'insertion des paragraphes en arrêtant d'abord l'événement de clé ( window.event.stoppropagation (); ) puis insérez la chaîne à l'aide d'insertion Commande HTML .

Toutefois, c'est-à-dire que cela dépend de ces divs pour les styles de réglage, etc. et vous aurez des problèmes en utilisant les << / p>

Je vous suggère d'utiliser un projet comme TinyMCE ou autres éditeurs et rechercher Un éditeur qui se comporte comme vous le souhaitez, car ils ont toutes sortes de solutions de contournement pour différents problèmes de navigateur. Peut-être que vous pouvez trouver un éditeur qui utilise ...


2 commentaires

Cette stratégie se distingue. Chaque fois que vous appuyez sur Entrée, vous militaient le DOM, l'utilisateur ne peut plus utiliser le menu Annuler pour annuler le changement!


Manipuler le DOM en utilisant les commandes ne casse pas annuler. Chaque commande peut être annulée. Bien sûr, vous devez éviter des trucs comme div.innerhtml = "foo";



1
votes

Si vous pouvez l'utiliser, FCKeditor a un paramètre pour cette


0 commentaires

8
votes

Voici une solution (utilise jQuery). Après avoir cliqué sur le bouton "Modifier To BR", la balise sera insérée au lieu de la balise

tag.

html : xxx

JavaScript: xxx

Ces liens a aidé à . Exemple de travail ici .


1 commentaires

Utilisez insertion () au lieu de pastéhtml () pour IE11 + et cross navigateur comme mentionné Ici



6
votes

Vous pouvez toujours apprendre à utiliser shift + entrer pour les retours de ligne unique et Entrée pour les retours de paragraphe. Ie se comporte comme MS Word à cet égard.


0 commentaires

1
votes

Modification du Line-hauteur code> du

code> à l'intérieur du code modifitable

code> fonctionne:
#editable_div p
{
    line-height: 0px;
}


0 commentaires