Bonjour E.Bzz,
Merci pour le code mais comment appeler cette fonction ?
Bonjour E.Bzz,
Merci pour le code mais comment appeler cette fonction ?
Et bien de la même manière que pour les autres solutions, je suppose.
Par exemple sur le onload du <body>, en lui passant en paramètre l'id du lien que tu auras mémorisé par ailleurs ...
EDIT : petite précision : dans mon exemple, c'est les id que tu devras générer en dynamique (et non les name), sinon ça risque de ne fonctionner que sous IE
A+
J'ai mis l'ID en dynamique
Comment passer l'ID au <body> ?
J'ai par ailleurs une erreur dans votre script : '(' attendu !
Je joins le code généré et le fichier du lien
Pourquoi laisser le "#" ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part var id_lien = '#etiq40'; //lien-54';
De plusDéclare la fonction dans le <head> plutôt que dans la <body> comme tu le fais.
Puis essaye l'appel suivantA+
Code : Sélectionner tout - Visualiser dans une fenêtre à part <body onload="VaAuLien('etiq40');">
Je ne m'en sort pas...
Rien ne se passe et j'ai une erreur
sur la ligne : if window.confirm("Visiter le lien " + id_lien + " ?")
Le test est visible sur :
http://www.bonturf.com/tests/img-45.php
Il ne manque pas quelque chose sur le if d'après toi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if window.confirm("Visiter le lien " + id_lien + " ?") self.location.href = document.getElementById(id_lien).href; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if(window.confirm("Visiter le lien " + id_lien + " ?")){ self.location.href = document.getElementById(id_lien).href; }
Ok bien vu, j'ai corrigé
Maintenant, l'erreur est sur cette ligne :
<body onload="VaAuLien('etiq40');">
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <body background="../images/peltc.gif"> <body onload="VaAuLien('etiq40');">
Tu as au moins une balise body en trop !
Bonjour E.Bzz,
Merci pour la correction, j'avais finalement
shunté ce bout de code car inutile.
Merci également à :
Bovino 6
andry.aime 3
SpaceFrog 1
Matthieu2000
Pour leurs conseils
Le programme fait maintenant ce que je voulais
hormis la souris (indéplaçable !).
La page est visible sur : http://www.bonturf.com/tests/img-49.php
Il reste toutefois un petit soucis
Après un click sur une ligne, branchement sur la
page "provi", et au retour a la liste, la ligne
du dernier lien consulté est bien sélectionnée
et bien placée avec le focus, mais, la ligne se
trouvant sous la souris l'est également (onmouseover) !
Comment éviter cela ?
Bonsoir E.Bzz,
Quand la page est chargée, aucun lien de la
liste n'est sélectionné et cela me génère une
erreur ligne 71 :
document.getElementById(id_lien).focus();
Visible sur : http://www.bonturf.com/tests/img-49.php
Si vous pouvez a remédier a cela
A vous lire.
Salut
cela vient probablement de ton PHP dans lequel tu as dû oublier de tester si une valeur existe bien, donc tu cherches à pointer sur un objet qui n'existe pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part if ( > 21 )
Bonsoir Bovino,
Oui, Merci c'était bien cela j'avais mal transmis ma variable
Donc plus d'erreur mais petit inconvénient, maintenant
le focus est d'office sur la ligne 1 avec des attributs
comme si c'était lors d'un survol !
Alors que la souris est positionnée sur une autre ligne
qui elle aussi prends les attributs du survol !
Comment éviter que le focus soit attribué a la
première ouverture de la page a la ligne 1 ?
Il suffit de ne pas faire appel au .focus() lorsque l'id_lien n'est pas renseigné ...
Donc ne pas générer le onload dans ton PHP, au lieu de générer un id_lien='lien0'.
Au fait : tu as toujours 2 balises body
A+
Bonjour E.Bzz,
Ok, j'ai réussi a gérer l'appel au focus
Le fait qu'il y ai 2 body ne génère aucune erreur.
Après un click sur une ligne, branchement sur la
page "provi", et au retour a la liste, la ligne
du dernier lien consulté est bien sélectionnée
et bien placée avec le focus, mais, la ligne se
trouvant sous la souris l'est également (onmouseover) !
Comment remédier a cela ?
Toujours visible sur : http://www.bonturf.com/tests/img-49.php
Pour le body :
J'ai mis une condition sur le body onload (focus)
donc si je regrouppe les 2 body's en 1 seul et que
le focus est nul, je n'aurai plus le fond d'écran !
Pour le reste :
Comme je l'ai dit, de retour dans la liste, la ligne
du lien visité est sélectionnée (ce qu'il faut)
Mais la ligne (lien) se trouvant sous la souris bénéficie
du mouseover et est également sélectionnée !
Ce que je souhaiterai, c'est que le mouseover soit
seulement pris en compte dès que l'on bouge la souris et
le fin du fin oter les attributs de l'ancien lien consulté.
Toujours visible sur : http://www.bonturf.com/tests/img-49.php
Ben tu n'as qu'à appliquer la condition qu'à l'attribut onload et non à tout le tag
Ben c'est déjà le cas ...
Pour ça, il te suffit de réinitialiser les attributs CSS de la ligne présélectionnée (ce que fait le onmouseout), par exemple sur le onmousemove du body (en désactivant ce onmousemove à la fin de la même fonction).
A+
Là, je suis largué !!!
Pour les 3 cas évoqués, ce que vous proposez,
c'est certainement la solution mais je n'ai aucune
idée de comment gérer cela.
En tout cas, vous avez bien cerné ce qu'il
faudrait faire.
A la relecture de mes posts,
j'ai moi-mème du mal a me comprendre !!!
Mon soucis, c'est qu'après avoir consulté
un lien (la page provi), et de retour sur la liste
des liens, deux lignes sont en surbrillance !
- La ligne du dernier lien visité
- La ligne se trouvant sous la souris
Je ne voudrais plus que la ligne se trouvant
sous la souris quand la page des liens s'affiche ne soit plus en
surbrillance mais dès que la souris bouge a nouveau,
réactiver le focus donc le survol.
Le mieux pour s'en rendre compte, cest de voir :
http://www.bonturf.com/tests/img-49.php
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager