[Fort Müller] take 3

asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 - 17 août 2004 à 01:06
Jean-François Pillou Messages postés 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 - 3 sept. 2004 à 13:50
Bonjour tout le monde :)

Bon j'ai eu l'occasion ces derniers temps de me pencher longuement sur XPFE, j'ai donc du me replonger dans le JavaScript, le DOM, et tout ce qui va avec, et j'ai trouver quelque chose qui résoud un petit probleme sous mozilla qui m'enerve assez fréquement.

Quand on utilise les boutons pour inserrer les balises de formatage, d'une part, le curseur se replace un peu ou il veut, d'autre part (plus génant) quand il y a un scroll dans le TEXTAREA, il remonte systematiquement tout en haut aprés l'insertion des balises...

En retouchant un tout petit peu, le bout de code incriminé:
...
{
  txtObj.value = txtObj.value.substr(0, txtObj.selectionStart) + Tag +
  txtObj.value.substr(txtObj.selectionStart, 
  txtObj.selectionEnd-txtObj.selectionStart) +
  closeTag + txtObj.value.substr(txtObj.selectionEnd);
}
...
de cette façon:
...
{
  // position du scroll
  oldPos = txtObj.scrollTop;        
  oldHght = txtObj.scrollHeight;

  // position du curseur
  pos = txtObj.selectionEnd + Tag.length + closeTag.length; 

  txtObj.value = txtObj.value.substr(0, txtObj.selectionStart) + Tag +
  txtObj.value.substr(txtObj.selectionStart,
  txtObj.selectionEnd-txtObj.selectionStart) +
  closeTag + txtObj.value.substr(txtObj.selectionEnd);

  // repositionnement cuseur aprés la balise fermante
  // peut être grandemant amélioré ;-)
  txtObj.selectionStart = pos; 
  txtObj.selectionEnd = pos;   

  // calcul et application de la nouvelle bonne postion du scroll
  newHght = txtObj.scrollHeight - oldHght; 
  txtObj.scrollTop = oldPos + newHght;
}
...
On obtient un comportement identique du javascript sur IE, et FireFox, j'ai pas poussé les teste trés loin, mais ça semble fonctionner plutot pas mal :)

@++
 ♫ Il suffirait de presque rien...

10 réponses

asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
17 août 2004 à 01:21
Au passage, j'en profite pour rajouter que ça serait pas mal que le TEXTAREA soit un peu plus grand en hauteur ;-)
 ♫ Il suffirait de presque rien...
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
17 août 2004 à 12:42
Et en largeur :o)

.  .  Ce post a été écrit entièrement
\_/  avec des molécules recyclées
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
17 août 2004 à 14:03
ha ?
Moi ça me va la largeure :)
par contre, un petit controle ActiveX pour lancer Word :)
 ♫ Il suffirait de presque rien...
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
17 août 2004 à 14:06
Arg non! Surtout pas, j'ai ce truc que sur mon PC de boulot et c'est deja trop pour moi :o)


.  .  Ce post a été écrit entièrement
\_/  avec des molécules recyclées
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426 > teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011
17 août 2004 à 14:08
Bah pas grave, avec ton SP2 tout neuf tu ne veras pas de changement :-D
 ♫ Il suffirait de presque rien...
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
17 août 2004 à 14:10
Il est sur mon perso pas sur mon pro :o)
Je vais attendre qu'ils nous l'impose ici pour le mettre chez moi, entre temps ils devront resoudre pas mal de probleme et je saurais a qui m'adresser pour les miens apres :o)


.  .  Ce post a été écrit entièrement
\_/  avec des molécules recyclées
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
17 août 2004 à 14:27
Je crois que c'est plus sage en effet :)

Vivement debut septembre qu'on ai plus de réaction suite à l'installation du SP2, je serais ravi de savoir si ce qui t'es arrivé est assez isolé, ou si ça risque de poser probleme aux trois quarts des utilisateurs.

J'ai l'impression qu'installer le SP2 sur un machine juste pour la mettre a jour n'est pas immaginable pour le moment, visiblement, il faut mieux installer le SP2 sur un systeme fraichement installé... :-/
 ♫ Il suffirait de presque rien...
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793
17 août 2004 à 14:33
D'autant que au niveau securite je suis tranquille, rien ne peux arriver sur ce PC, tout est redirige sur ma slack sur mon serveur :o) Et en plus j'yi un routeur/fw donc...C'etait plus pour le fun et pour l'USB2 (que j'arrive pas a faire reconnaitre depuis des plombes)

Je pense que tu as raison pour l'install aussi...Je te raconte pas pour ceux qui vont l'avoir directement par le update...
Autre chose amusante, il "bouffe" tous les patch XP dans le panneau de desinstallation ...


.  .  Ce post a été écrit entièrement
\_/  avec des molécules recyclées
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426 > teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011
17 août 2004 à 14:39
Ben, oui, logiquement tout ces patch sont dans le SP2 maintenant,
C'est pas plus mal dans un sens, la derniere fois que j'y ai jeter un oeil, je n'avais plus qu'une longue liste de patch dedans ;)
Par contre, hote moi d'un doute... quand tu désinstalles le SP2, tu as besoin de tout repacher ?

 ♫ Il suffirait de presque rien...
0
teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011 1 793 > teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011
17 août 2004 à 14:47
Pas eu le temps de verifier, ca me ferait chier quand meme :o(
Enfin comme je le disais je suis bien protege par ailleurs donc pas dramatique...

.  .  Ce post a été écrit entièrement
\_/  avec des molécules recyclées
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426 > teebo Messages postés 33491 Date d'inscription jeudi 14 octobre 2004 Statut Modérateur Dernière intervention 24 février 2011
17 août 2004 à 14:50
Yop, pas dramatique pour toi puisque tu sais ou tu mes les pieds :-)
Mais si ça désinstalles les patch, et que ça pose tant que ça de probléme, on risque fort d'avoir une seconde fois, la floppé de vers et autres...
J'espere pas, mais, avoir l'effet totalement inverse que celui attendu par microsoft, ce n'est pas totalement exclus :(

 ♫ Il suffirait de presque rien...
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
26 août 2004 à 12:49
Bonche :)

Je fais que le remonter ;)
 ♫ Il suffirait de presque rien...
0
Serge Messages postés 24567 Date d'inscription mardi 30 novembre 1999 Statut Modérateur Dernière intervention 16 décembre 2016 209
26 août 2004 à 14:28
tiens, un vacancier !

_______
Sergio
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426 > Serge Messages postés 24567 Date d'inscription mardi 30 novembre 1999 Statut Modérateur Dernière intervention 16 décembre 2016
26 août 2004 à 14:29
raté... a fini vacances :(
 ♫ Il suffirait de presque rien...
0

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

Posez votre question
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
27 août 2004 à 18:18
je suis le seul que ça énerve ? :(
 ♫ Il suffirait de presque rien...
0
SirHill Messages postés 4060 Date d'inscription vendredi 19 mars 2004 Statut Contributeur Dernière intervention 19 avril 2020 543
27 août 2004 à 18:34
Salut,

Non, moi zaussi...

Je vote POUR ! ;-)
0
SirHill Messages postés 4060 Date d'inscription vendredi 19 mars 2004 Statut Contributeur Dernière intervention 19 avril 2020 543
27 août 2004 à 18:44
Je n'ai pas constaté les "phénomènes" que tu décris ci-dessus (enfin je n'y ai pas trop fait attention), mais ce qui me gêne (silonpeudir) avait été évoqué ici :
http://www.commentcamarche.net/forum/affich-575028

Exemple :
En voulant mettre un texte en gras et en italique, j'obtiens ceci :

<gras>texte</gras><ital></ital>
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
27 août 2004 à 18:50
arf , oui ça c'est encore autre chose!

Dans le poste du dessus, c'était même quand tu fesais la premiere insertion (<gras>)
faire en sorte que ça reste selectionner, ça peut etre pas mal, mais ça dépend de la façon dont tu rédiges tes messages, si tu ecrit tout et qu'ensuite tu mets en forme, c'est valable, si tu met en forme au fur et a mesure, ça ne l'est plus...

C'est justement ce que je sous entendais ici:
  // repositionnement cuseur aprés la balise fermante
  // peut être grandemant amélioré ;-)
  txtObj.selectionStart = pos; 
  txtObj.selectionEnd = pos;


Le probleme du scroll, c'est uniquement pour mozilla, sous IE, ça se passe sans soucis, c'est peut-etre pour ça que tu ne le vois pas :)
 ♫ Il suffirait de presque rien...
0
SirHill Messages postés 4060 Date d'inscription vendredi 19 mars 2004 Statut Contributeur Dernière intervention 19 avril 2020 543
28 août 2004 à 01:41
En effet...

Le "problème" que je mentionne ci-dessus ne survient qu'avec IE, car le texte reste selectionné après l'ajout des balises.

Enfin c'est pas hyper grave :-)

J'allais voter pour l'augmentation de la surface d'écriture, mais je viens de m'apercevoir qu'elle a eu lieu ;-)

Merci Jeff :-)
0
SirHill Messages postés 4060 Date d'inscription vendredi 19 mars 2004 Statut Contributeur Dernière intervention 19 avril 2020 543
31 août 2004 à 02:47
Ben tiens, pour corriger ce problème, le code ci-dessous :
...
if (ie==1) 
	{
		if (txtObj.createTextRange && txtObj.caretPos) 
			{
				var caretPos = txtObj.caretPos;
			
				if ( txtObj.caretPos.text == '') 
					{
						caretPos.text = ( ( enclose ) ? Tag + closeTag : Tag );
						//caretPos.text.charat(caretPos.text.length - 1)  = ' ' ? Tag + closeTag +  ' ' : Tag + closeTag;
		 		}

	 			else 
					{
						caretPos.text = ( ( enclose ) ? Tag + caretPos.text + closeTag : Tag + caretPos.text );
 	 	 		}	

				markSelection ( caretPos );

		}

   		else if (txtObj.getSelection && txtObj.caretPos) 
			{

				txtObj.focus();
  	 			var caretPos = txtObj.caretPos;
	 			caretPos.text = caretPos.text.charat(caretPos.text.length - 1)  = ' ' ? Tag + closeTag +  ' ' : Tag + closeTag;

				markSelection ( caretPos );


		}


   		else 
			{
   				txtObj.value += Tag + closeTag;

		}

}
...
pourrait être remplacé par celui-ci :
...
if (ie==1) 
	{
  		var str = document.selection.createRange().text;
  		txtObj.focus();
		var sel = document.selection.createRange();
  		sel.text = Tag + str + closeTag;
  		return;
}
...

Et le code suivant pourrait être supprimé :
onkeyup=markSelection(this); onclick=markSelection(this); onselect=markSelection(this); 
(balise TEXTAREA)
function markSelection ( txtObj ) {

	if ( txtObj.createTextRange ) 
		{
			txtObj.caretPos = document.selection.createRange().duplicate();
			//isSelected = true;
	}

	else if (txtObj.getSelection)
		{
			txtObj.caretPos = document.getSelection();
	}

	else return; 
}
:-)
0
Jean-François Pillou Messages postés 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 274
27 août 2004 à 18:49
Moi je vote POUR aussi !

                                   
Jeff  \--Webmaster@CCM--/ 
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426
27 août 2004 à 18:51
Merci M'sieur! :)

A puis y'a même plus de place!!! cool, Merci :)
 ♫ Il suffirait de presque rien...
0
Jean-François Pillou Messages postés 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 274 > asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024
27 août 2004 à 19:02
Non c'est moi !

Merci M'sieur asevere, grâce à vous, comme dirait l'autre :
CCM is fully Mozilla-compliant ! :-)

                                   
Jeff  \--Webmaster@CCM--/ 
0
Eaulive Messages postés 27064 Date d'inscription jeudi 18 avril 2002 Statut Modérateur Dernière intervention 23 juin 2015 290
27 août 2004 à 20:19
voyons voir test yes!

Ça va être dur de s'habituer à ne plus écrire les balises à la main. :-D

Eaulive...
Vaut mieux un p'tit piment qu'un avion en plastique
0
Thom@s Messages postés 3412 Date d'inscription mardi 4 mars 2003 Statut Modérateur Dernière intervention 28 septembre 2019 678
1 sept. 2004 à 00:46
Salut à tous !

C'est cool ça :-)
Merci !
  ___________________
  |__ .: Thom@s :. ___|
0
Thom@s Messages postés 3412 Date d'inscription mardi 4 mars 2003 Statut Modérateur Dernière intervention 28 septembre 2019 678
1 sept. 2004 à 01:05
Re,

Ce serait cool si on pouvait avoir la même chose dans la FAQ, non ? :-)

Merci Jeff :)
  ___________________
  |__ .: Thom@s :. ___|
0
asevere Messages postés 13084 Date d'inscription lundi 28 janvier 2002 Statut Webmaster Dernière intervention 23 novembre 2024 426 > Thom@s Messages postés 3412 Date d'inscription mardi 4 mars 2003 Statut Modérateur Dernière intervention 28 septembre 2019
1 sept. 2004 à 01:17
Trés jsute, j'ai remarqué ça hier, mais j'ai oublié d'en reparler :)
 ♫ Il suffirait de presque rien...
0
SirHill Messages postés 4060 Date d'inscription vendredi 19 mars 2004 Statut Contributeur Dernière intervention 19 avril 2020 543 > Thom@s Messages postés 3412 Date d'inscription mardi 4 mars 2003 Statut Modérateur Dernière intervention 28 septembre 2019
1 sept. 2004 à 01:21
Toutafé ;)

Et une petite augmentation de la surface d'écriture ne serait pas de refus :)
0
Jean-François Pillou Messages postés 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023 63 274 > Thom@s Messages postés 3412 Date d'inscription mardi 4 mars 2003 Statut Modérateur Dernière intervention 28 septembre 2019
3 sept. 2004 à 00:47
Tout ceci est fait, merci à tous et en particulier à asevere pour les améliorations de code ! :-)

                                   
Jeff  \--Webmaster@CCM--/ 
0
Thom@s Messages postés 3412 Date d'inscription mardi 4 mars 2003 Statut Modérateur Dernière intervention 28 septembre 2019 678 > Jean-François Pillou Messages postés 18301 Date d'inscription lundi 15 février 1999 Statut Webmaster Dernière intervention 16 février 2023
3 sept. 2004 à 07:38
et merci à toi :-)
  ___________________
  |__ .: Thom@s :. ___|
0