Trucsweb.com

Forum de discussion

 Forum « Programmation Javascript » (archives)

Re: menu rollover : lien cliqué reste actif

Envoyé: 30 novembre 2004, 16h36 par bendev


Salut,
Sur chacun de tes liens, force donc le code généré par un truc du genre :
<a onmousedown="javascript:appel_down(1)" onmouseup="javascript:appel_up(1)" onmouseover="javascript:appel_over(1)" onmouseout="javascript:appel_out(1)" href="javascript:appel_selection(1); ">

donc à 1 pour le 1er lien, tu envoies 2 piour le 2ème et ainsi de suite ...

... et dans le code js, tu peux peut-être faire du ménage aussi et remplacer le code dreamweaver par :

function appel_down(num) {
//======================
appel_reinit()
if (num ==1) {document.images[1].src='../includes/Images/titre_nav2c.jpg';
UI = 'INS';
parent.bas.location.href='../asp/engine_bas.asp?param=aff_inscript'; return true
}
if (num ==2) {document.images[2].src='../includes/Images/titre_nav3c.jpg'
UI = 'ANN';
parent.bas.location.href='../asp/engine_bas.asp?param=aff_annonce';
}
if (num ==3) {document.images[3].src='../includes/Images/titre_nav4c.jpg'
UI = 'LST';
parent.bas.location.href='../asp/engine_bas.asp?param=aff_lstann'; return true
}
if (num ==4) {document.images[4].src='../includes/Images/titre_nav5c.jpg'
UI = 'IDE';
parent.bas.location.href='../asp/engine_bas.asp?param=aff_stats'; return true
}
}
function appel_up(num) {
//====================
appel_reinit()
if (num ==1) {document.images[1].src='../includes/Images/titre_nav2o.jpg'; window.status=' ' ; return true}
if (num ==2) {document.images[2].src='../includes/Images/titre_nav3o.jpg'; window.status=' ' ; return true}
if (num ==3) {document.images[3].src='../includes/Images/titre_nav4o.jpg'; window.status=' ' ; return true}
if (num ==4) {document.images[4].src='../includes/Images/titre_nav5o.jpg'; window.status=' ' ; return true}
}
function appel_over(num) {
//======================
appel_reinit()
if (num ==1 & parent.haut.UI != 'INS') {document.images[1].src='../includes/Images/titre_nav2o.jpg';
return true}
if (num ==2 & parent.haut.UI != 'ANN') {document.images[2].src='../includes/Images/titre_nav3o.jpg';
return true}
if (num ==3 & parent.haut.UI != 'LST') {document.images[3].src='../includes/Images/titre_nav4o.jpg';
return true}
if (num ==4 & parent.haut.UI != 'IDE') {document.images[4].src='../includes/Images/titre_nav5o.jpg';
return true}
}

function appel_out(num) {
//=====================
appel_reinit()
if (num ==1 & parent.haut.UI != 'INS') {document.images[1].src='../includes/Images/titre_nav2.jpg'; window.status=' ' ; return true}
if (num ==2 & parent.haut.UI != 'ANN') {document.images[2].src='../includes/Images/titre_nav3.jpg'; window.status=' ' ; return true}
if (num ==3 & parent.haut.UI != 'LST') {document.images[3].src='../includes/Images/titre_nav4.jpg'; window.status=' ' ; return true}
if (num ==4 & parent.haut.UI != 'IDE') {document.images[4].src='../includes/Images/titre_nav5.jpg'; window.status=' ' ; return true}
}

function appel_selection(num){
//===========================
if (num ==1) {document.images[1].src='../includes/Images/titre_nav2X.gif'};
if (num ==2) {document.images[2].src='../includes/Images/titre_nav3X.gif'};
if (num ==3) {document.images[3].src='../includes/Images/titre_nav4X.gif'};
if (num ==4) {document.images[4].src='../includes/Images/titre_nav5X.gif'};
}
function appel_reinit(){
//===========================

if (parent.haut.UI == 'INS') {
document.images[2].src='../includes/Images/titre_nav3.jpg'
document.images[3].src='../includes/Images/titre_nav4.jpg'
document.images[4].src='../includes/Images/titre_nav5.jpg'}
if (parent.haut.UI == 'ANN') {
document.images[1].src='../includes/Images/titre_nav2.jpg'
document.images[3].src='../includes/Images/titre_nav4.jpg'
document.images[4].src='../includes/Images/titre_nav5.jpg'}
if (parent.haut.UI == 'LST') {
document.images[1].src='../includes/Images/titre_nav2.jpg'
document.images[2].src='../includes/Images/titre_nav3.jpg'
document.images[4].src='../includes/Images/titre_nav5.jpg'}
if (parent.haut.UI == 'IDE') {
document.images[1].src='../includes/Images/titre_nav2.jpg'
document.images[2].src='../includes/Images/titre_nav3.jpg'
document.images[3].src='../includes/Images/titre_nav4.jpg'}
}

Brut de fonderie ! c'est du code que j'ai utilisé et qui marche très bien : tu te retrouves donc obligé de gérer à la main le positionnement et le dépositionnement du roll-over ; tu gères toi même par des images les affichages correspondant aux différents modes.
En fait maintenant je ne me sers plus d'image pour faire ça, mais j'utilise plutôt du css pour faire varier la police utilisée sur le lien, avec le background : ça va plus vite et c'est suffisant pour faire des effets sympas qui t'obligent pas à faire des images, même petites, qui ne seront pas réutilisables ...

J'espère que ça répond à ta question !

@+
Ben


Réponses

 Aucune réponse à ce message... 
Aucun médias sociaux
X

Trucsweb.com Connexion

Connexion

X

Trucsweb.com Mot de passe perdu

Connexion

X

Trucsweb.com Conditions générales

Conditions

Responsabilité

La responsabilité des Trucsweb.com ne pourra être engagée en cas de faits indépendants de sa volonté. Les informations mises à disposition sur ce site le sont uniquement à titre purement informatif et ne sauraient constituer en aucun cas un conseil ou une recommandation de quelque nature que ce soit.

Aucun contrôle n'est exercé sur les références et ressources externes, l'utilisateur reconnaît que les Trucsweb.com n'assume aucune responsabilité relative à la mise à disposition de ces ressources, et ne peut être tenue responsable quant à leur contenu.

Droit applicable et juridiction compétente

Les règles en matière de droit, applicables aux contenus et aux transmissions de données sur et autour du site, sont déterminées par la loi canadienne. En cas de litige, n'ayant pu faire l'objet d'un accord à l'amiable, seuls les tribunaux canadien sont compétents.

X

Trucsweb.com Trucsweb

X

Trucsweb.com Glossaire

X

Trucsweb.com Trucsweb

X

Trucsweb.com Trucsweb

Conditions

Aucun message!

Merci.

X
Aucun message!
X

Trucsweb.com Créer un compte

Créer un compte

.
@