Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Outils > XMLRAD
XMLRAD Environnement de développement Web XML/XSL. Avant de poster -> F.A.Q XMLRAD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/01/2008, 16h12   #1
Membre confirmé
 
Avatar de Jeweller
 
Inscription : août 2003
Messages : 354
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 354
Points : 226
Points : 226
Par défaut xslc.js, SetFocus() et IE6

Hello!
J'ai une petite remarque, la routine SetFocus de xslc.js attribue le focus à un élément. Sous IE6 (et dans certains cas?, dans mon contexte d'utilisation en l'occurence) celle-ci fait "planter" le navigateur.
En fait si la zone en question ne peut pas obtenir le focus, cela ne fonctionne forcément pas, mais le soucis c'est que IE part en vrille et il faut le relancer.
Attention donc en utilisant SetFocus à tester avant si le focus est possible!

Je propose donc que cette fonction face les tests necessaires avant, un truc du genre:

Code :
1
2
3
 
   if (obj.type != 'text') return false;
   if (obj.disabled || obj.readonly)  return false;
avant le obj.focus();

Michaël
Jeweller est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2008, 22h40   #2
Membre du Club
 
Inscription : février 2003
Messages : 89
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 89
Points : 44
Points : 44
Merci.
Très bonne info. Il faudrait prendre en compte également le bouton ou la case à cocher.
powerlog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2008, 22h52   #3
Membre du Club
 
Inscription : février 2003
Messages : 89
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 89
Points : 44
Points : 44
je voulais dire "le bouton radio"
powerlog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2008, 08h29   #4
Membre confirmé
 
Avatar de Jeweller
 
Inscription : août 2003
Messages : 354
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 354
Points : 226
Points : 226
Ben j'y ai pensé au bouton radio, mais j'ai pas testé et je suis pas sur que cela pose pas le même soucis, car le check ou le radio ne peuvent à peine plus prendre le focus qu'une zone read only... à tester donc!
Jeweller est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2008, 11h53   #5
Membre éclairé
 
Inscription : janvier 2003
Messages : 284
Détails du profil
Informations forums :
Inscription : janvier 2003
Messages : 284
Points : 311
Points : 311
Envoyer un message via MSN à Nicolas.Cogi
Le code actuel xslc.js:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
function SetFocus(ID, Begin, Select) {
	var obj, txt;
	if (Begin == null)
		Begin = true;
	if (Select == null)
		Select = false;
	if (obj = getObject(ID))
	{
		if (isVisible(obj) == false || isDisabled(obj))
			return;
		obj.focus();
		if (Begin == false)
		{
			if (obj.createTextRange)
			{
				txt = obj.createTextRange();
				txt.collapse(false);
				txt.select();
			}
		}
		if (Select == true)
		{
			obj.select();
		}
	}
}
Test fait sur isVisible() et isDisable() avant le focus, pour les memes raisons.

Est-ce que tu as testé l'attribut readonly sur d'autre navigateurs ?
__________________
Nicolas
Nicolas.Cogi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2008, 14h05   #6
Membre confirmé
 
Avatar de Jeweller
 
Inscription : août 2003
Messages : 354
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 354
Points : 226
Points : 226
Oui, j'ai vu dans la beta c'est un peu mieux, mais pas suffisant à mon avis.
IsVisible renverra vrai si le champ est de type hidden par exemple et donc le SetFocus sera fait quand mêm et ca plantera (c'etait mon cas) !
Par contre je n'ai pas testé le readonly sur d'autres navigateurs. FF apparement cela le dérange moins. Mais bon, dès lors que la zone ne peut avoir le focus, il n'y a pas lieu d'essayer de le lui donner.

Michael
Jeweller est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h48.


 
 
 
 
Partenaires

Hébergement Web