[Réglé] Balise div et évènement onmouseout ???

Balise div et évènement onmouseout ??? [Réglé] - HTML/CSS - Programmation

Marsh Posté le 12-11-2005 à 00:51:10    

Bonjour à tous,
 
Me voilà bien embêté avec l'évenement onmouseout() d'une balise <div> qui contient un menu que je cache, enfin bon j'essaye...
 
Code :
function aLs(ID)
{ var Layer;
 if(isIE)
 { Layer=eval("document.all."+ID)}
     if(isNS6)
 { Layer=eval("document.getElementById('"+ID+"')" )}
 if(isNS4)
 { Layer=eval("document."+ID)}
 if(isOther)
 { Layer="null";
  alert("Votre navigateur ne permet pas de visualiser les pages suivantes.\nNous en sommes sincèrement désolé." );
 }
 return Layer;
}
 
function fadeOut(ID)
{ var aLsID=aLs(ID);
 if((aLsID.style.visibility=="visible" )||(aLsID.style.visibility=="" ))
 { aLsID.style.filter="blendTrans(duration=1)"
  if(aLsID.filters.blendTrans.status!=2)
  { aLsID.filters.blendTrans.Apply()
   aLsID.style.visibility="hidden"
   aLsID.filters.blendTrans.Play()
  }
 }
}
 
<div id="ssmenu1" style="visibility:hidden" onmouseout="fadeOut('ssmenu1')">
<a href="http://www.google.fr">Menu 1</a><BR>
<a href="http://www.google.fr">Menu 2</a><BR>
<a href="http://www.google.fr">Menu 3</a><BR>
<a href="http://www.google.fr">Menu 4</a><BR>
<a href="http://www.google.fr">Menu 5</a><BR>
<a href="http://www.google.fr">Menu 6</a>
</div>
 
Question :
Pourquoi l'évènement onmouseout se déclenche au passage d'un HREF à l'autre au lieu de se déclencher, comme je le voudrais, uniquement à la sortie de la zone div ? Comment faire...  :pfff:  arrrrrgh ?
 
question annexe : sur beaucoup d'exemples, on remarque l'utilisation de liste <ul><li> qu'est ce que cela apporte de plus  :??:  
 
Un grand merci pour votre aide, pour l'instant je tourne en rond.
 
Pacush


Message édité par Pacush777 le 12-11-2005 à 15:04:26
Reply

Marsh Posté le 12-11-2005 à 00:51:10   

Reply

Marsh Posté le 12-11-2005 à 01:57:28    

<ul> et <li> sont des balises de présentations, <ul> te créé une sorte d'alinéa et <li> une puce (on peut trouver plusieurs <li> dans un <ul>

Reply

Marsh Posté le 12-11-2005 à 02:29:16    

DrWatson a écrit :

<ul> et <li> sont des balises de présentations, <ul> te créé une sorte d'alinéa et <li> une puce (on peut trouver plusieurs <li> dans un <ul>


 
Merci pour ta réponse, tu me diras, à cette heure il n'y a pas foule  :lol:  
Je connais bien le fonctionnement de ces balises, c'est leur intérêt dans un systême de sous-menu que je ne comprend pas, quelques <HREF> intercalées de <BR> semblent moins prise de tête que ce que j'ai pu voir dans le style <ul><li> puis CSS pour virer les puces (exemple : http://iubito.free.fr/prog/menu/pro.htm).
 
M'enfin bon ce qui m'arrangerait cent fois plus, ce serait de régler ce bon sang de problème de onmouseout qui se déclenche quand on ne l'a pas demandé    :ange:

Message cité 1 fois
Message édité par Pacush777 le 12-11-2005 à 02:29:52
Reply

Marsh Posté le 12-11-2005 à 08:44:57    

DrWatson a écrit :

<ul> et <li> sont des balises de présentations, <ul> te créé une sorte d'alinéa et <li> une puce (on peut trouver plusieurs <li> dans un <ul>


 
[:roane]  
 
Euh non lol :)
 
<ul> est une balise indiquant un début d'une liste non ordonnée. <li> Indique le début d'un des éléments de la liste. Ce ne sont en aucun cas des éléments de présentation. Pour la présentation, il faut utiliser les feuilles de style en cascade (css).
 
Pour info, en html de 2005, on utilise <ul> parce que cela représente une liste non ordonnée, pas parce que par défaut ca fait un alinéa.
 

Pacush777 a écrit :

Merci pour ta réponse, tu me diras, à cette heure il n'y a pas foule  :lol:  
Je connais bien le fonctionnement de ces balises, c'est leur intérêt dans un systême de sous-menu que je ne comprend pas, quelques <HREF> intercalées de <BR> semblent moins prise de tête que ce que j'ai pu voir dans le style <ul><li> puis CSS pour virer les puces (exemple : http://iubito.free.fr/prog/menu/pro.htm).
 
M'enfin bon ce qui m'arrangerait cent fois plus, ce serait de régler ce bon sang de problème de onmouseout qui se déclenche quand on ne l'a pas demandé    :ange:


 
Un menu est une liste de liens. Donc une liste (<ul> ) avec des éléments (<li> ) contenant des liens (<a href=""></a> ). On appelle cela la sémantique, et c'est une des choses importante a savoir quand on fait de l'html aujourd'hui.


Message édité par Roane le 12-11-2005 à 08:46:59

---------------
http://www.alsacreations.com, http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net. A ne surtout pas prendre en exemple : http://www.worldinternet.be
Reply

Marsh Posté le 12-11-2005 à 11:10:28    

L'emploi d'un mauvais vocabulaire est à proscrire, tu as raison.
Mettre en forme sa page par un système de liste non ordonnée, ce n'est pas de la présentation, puisque ce terme est dédié à l'attribution de polices, couleurs, fond et consorts de préférence par CSS.
Par contre la sémantique, toute savante qu'elle soit n'explique pas l'intérêt pratique des <li> qui impose par la suite des contraintes de euuuh oserais-je... présentations  :lol:  
 
Serait-il possible siou plait  :sweat:  de revenir au VRAI sujet : Comment obliger l'évènement onmouseout à l'unique usage de la zone <div> et non pas au changement de balise <a> ???
 
(d'ailleurs l'encapsulage des liens par des balises <li> ne règle pas le problème)
 
Encore merci pour vos réponses

Reply

Marsh Posté le 12-11-2005 à 12:33:08    

UP

Reply

Marsh Posté le 12-11-2005 à 15:02:31    

Enfin trouvé une solution ! ! !
 
Code :
function fadeOut(ID)
{ var aLsID=aLs(ID);
 if((aLsID.style.visibility=="visible" )||(aLsID.style.visibility=="" ))
 { aLsID.style.filter="blendTrans(duration=0.5)"
  if(aLsID.filters.blendTrans.status!=2)
  { aLsID.filters.blendTrans.Apply()
   aLsID.style.visibility="hidden"
   aLsID.filters.blendTrans.Play()
  }
 }
}
function CacheDelai()
{ timeout=setTimeout("for(i=1;i<=5;i++){fadeOut('ssmenu'+i)}",500);
}
function AnnuleCache()
{ if (timeout){clearTimeout(timeout)}
}
 
<ul id="ssmenu1" style="visibility:hidden" onmouseover="AnnuleCache()" onmouseout="CacheDelai()" onfocus="AnnuleCache()" onblur="CacheDelai()">
 <li><a href="http://www.google.fr">Menu 1</a></li>
 <li><a href="http://www.google.fr">Menu 2</a></li>
 <li><a href="http://www.google.fr">Menu 3</a></li>
 <li><a href="http://www.google.fr">Menu 4</a></li>
 <li><a href="http://www.google.fr">Menu 5</a></li>
 <li><a href="http://www.google.fr">Menu 6</a></li>
</ul>
 
Et tout compte fait j'utilise les <li>  :ange: , sans trop savoir pourquoi, ça semble juste plus propre puisque c'est destiné à cet usage.
 
L'astuce est d'inspiration iubito  :hello:  (http://iubito.free.fr/prog/menu/pro.htm), rendons à César, ce qui est à César.
 
Merci pour vos réponses.
 
Topic clos...


Message édité par Pacush777 le 12-11-2005 à 15:03:30
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed