Incompatibilité mozilla

lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008 - 1 août 2005 à 11:06
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 2 août 2005 à 10:24
bonjour,

un ami m'a posé une question auquel je ne peux répondre, alors si vous connaissezla réponse, voici la question :

j'ai un script qui me permet de faire un peut comme dans cette zone de texte et quand je selectionne le texte pour mettre par exemple de la couleur sous IE cela fonctionne mais pas sous Mozilla si quelqu'un a la reponse cela m'arragerais...

voila le script utilisé :

/// Fonction des BBcodes
function AddText(startTag,defaultText,endTag)
{
if(document.all )
{
if (document.nouvelle.newcom.createTextRange)
{
var text;
document.nouvelle.newcom.focus(document.nouvelle.newcom.caretPos);
document.nouvelle.newcom.caretPos = document.selection.createRange().duplicate();
if(document.nouvelle.newcom.caretPos.text.length>0)
{
document.nouvelle.newcom.caretPos.text = startTag + document.nouvelle.newcom.caretPos.text + endTag;
}
else
{
document.nouvelle.newcom.caretPos.text = startTag+defaultText+endTag;
}
}
else document.nouvelle.newcom.value += startTag+defaultText+endTag;
}
else
{
ChampTexte = document.forms['nouvelle'].elements['newcom'];
Valeur = ChampTexte.value;
curseur = ChampTexte.selectionStart;
ValeurDeb = Valeur.substring( 0 , ChampTexte.selectionStart );
ValeurFin = Valeur.substring( ChampTexte.selectionStart , ChampTexte.textLength );
ChampTexte.value = ValeurDeb + startTag + defaultText + endTag + ValeurFin;
ChampTexte.focus();
}
}
// fin du code

merci de m'expliquer ce qui est un changer dans ce code pour qu'il soit compatible sous mozilla.

merci

lily

5 réponses

cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
1 août 2005 à 11:35
Bonjour,

if(document.all )
if (document.nouvelle.newcom.createTextRange)
c'est exclusif Internet explorer


pas lu le reste mais :
si dans un iframe
utiliser execCommand pour IE et FF
si dans un champ texte, les caractères sélectionnés :
avec IE
document.selection.createRange().text
avec FireFox
champ.substring(champ.selectionStart,
champ.selectionEnd)


Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
1 août 2005 à 12:57
ok merci beaucoup, je vais lui transmettre la réponse afin de voir si cela lui suffit!
0
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
1 août 2005 à 12:58
c'est bon a savoir pour moi aussi :o)
0
lilyvirus Messages postés 117 Date d'inscription mardi 14 janvier 2003 Statut Membre Dernière intervention 5 novembre 2008
1 août 2005 à 23:06
Bonsoir

Pas reussis a adapter a mozilla meme avec l'astuces, je doit pas mettre le code ou il faut. Pour l'instant j'ai laisser tel quel , ce n'est pas dans une Iframe mais dans un textaera que j'edite les bbcodes.

Si vous voulez tester le script en grandeur nature pour te donner une idee de ce que cela donne

Le lien direct

Le login = user
Le Password = pass

merci par avance

lily
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
2 août 2005 à 10:24
il vient d'être posté un source qui ne faisait
ça qu'avec Internet Explorer, j'y ai ajouté
une solution compatible avec FireFox :

<script type="text/javascript">
function Inserer(insertion,ou)
{
switch (navigator.appName) {
// ===========================
case "Microsoft Internet Explorer":
// ===========================
ou.focus();
document.selection.createRange().text=
"<"+insertion+">"+
document.selection.createRange().text+
"</"+insertion+">"
break;
// =============================
case "Netscape": // FireFox...
// =============================
ou.value=
ou.value.substring(0,ou.selectionStart)+
"<"+insertion+">"+
ou.value.substring(ou.selectionStart,ou.selectionEnd) +
"</"+insertion+">"+
ou.value.substring(ou.selectionEnd);
break;
// ========
default:// sinon ?
// ========
break; } }
</script>


<form name="frm">
<textarea
name="txt"></textarea>

Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0