Map area - affichage des blocs div comprenant des liens
demnatis
Messages postés33Date d'inscriptionmardi 23 décembre 2008StatutMembreDernière intervention 2 avril 2009
-
24 mars 2009 à 20:45
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 2011
-
30 mars 2009 à 17:40
Bonjour a tous,
Après avoir galéré des jours sur mon problème, je m'en remets a la communauté pour votre aide. Bien entendu, j'ai essayé de mettre en pratique les conseils et les scripts donnés sur d'autres posts.de + je ne maitrise que trés peu le javascript.
Mon probleme est le suivant:
- j'ai créé une map comprenant des map area.
- chaque map area devrait afficher dans une position fixe un bloc div créé dans mon css
- au survol des differentes map area le bloc devrait changer et remplacer le precedent.
ces bloc comprendraient des liens cliquables.
voili voilou!
j'espère avoir été assez clair et peut etre pourrez vous me donner un coup de main?
Merci d'avance pour votre aide.
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 25 mars 2009 à 10:07
Bonjour,
et qu'est-ce qui ne fonctionne pas dans ce que tu fais ?
parce que sans le moindre ch'tiot bout de code, impossible
de te dire où il y a des erreurs...
un tout petit extrait serait le bien venu
demnatis
Messages postés33Date d'inscriptionmardi 23 décembre 2008StatutMembreDernière intervention 2 avril 2009 25 mars 2009 à 15:21
Bonjour Bul3,
Tout d'abord, je te remercie de t'inquiéter de mon problème et de bien vouloir me donner un coup de main.
Afin que tu saisisses plus clairement mon travail voici ce que je fais.
Je bosse actuellement sur un portail referenceant certaines maisons d'hotes
au maroc.
- J'ai besoin d'une carte du maroc (c'est fait) contenant des areas.
- Au survol de la souris, ces areas, afficheraient des infobulles.
- Ces infobulles afficheraient une liste de liens (etablissements hoteliers) qui redirigeraient vers une page en php.
Mais (y en a toujours un) et c'est la le hic, c'est que l'on puisse cliquer les liens contenu dans la boite.
Ces liens
ouvriraient une page en php.
L'idéal serait que cette infobulle s'ouvre a coté du pointeur de la souris au survol de l'area et se ferme en quittant l'area.
L'infobulle devrait s'afficher uniquement dans la frame (centrale) sans en sortir etant donné que ma page est divisé en 3 colonnes:
- 1 menu a gauche
- 1 frame centrale contenant le blabla et donc dans cette page ma map
- 1 bandeau a droite reservé aux annonces publicitaire
Voici ci dessous le bout de code que j'ai bidouillé (un parmi tant d'autres).
1/ ca ne marche pas
2/ Ca ne répond pas du tout a ce que je voudrais faire mais bon...j'ai pas trouvé mieux.
Voila.
Merci encore pour ton aide.
<script type="text/javascript">
//----------------
function _0(afficheId"bloc1"){
this_.onmouseout= function(){};
}
//----------------
function _1(afficheId"bloc1"){
this_.innerHTML = "OVER LIEN";
}
//----------------
function _2(cacheId"bloc1"){
this_.innerHTML = "LIEN";
}
</script>
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 25 mars 2009 à 15:39
function _0(afficheId"bloc1")
pas la bonne syntaxe
function nom_de_la_fonction( parametre_et_sans_guillemets )
{ ici on peut utiliser parametre_et_sans_guillemets
qui est = à ce qu'il y a dans l'appel }
appel : nom_de_la_fonction( toto );
et dans la fonction parametre_et_sans_guillemets = toto
@+
Vous n’avez pas trouvé la réponse que vous recherchez ?
demnatis
Messages postés33Date d'inscriptionmardi 23 décembre 2008StatutMembreDernière intervention 2 avril 2009 25 mars 2009 à 16:22
function nom_de_la_fonction( parametre_et_sans_guillemets )
{ ici on peut utiliser parametre_et_sans_guillemets
qui est = à ce qu'il y a dans l'appel }
appel : nom_de_la_fonction( toto );
et dans la fonction parametre_et_sans_guillemets = toto
c'est clair pour beaucoup mais pour moi....
function? affiche ou cache tu veux dire
appel? j'imagine onmouseover par exemple?
demnatis
Messages postés33Date d'inscriptionmardi 23 décembre 2008StatutMembreDernière intervention 2 avril 2009 26 mars 2009 à 11:27
bonjour a tous!
voici un bout de code qui m'a fait avancer
mon div apparait au chargement de la page
je souhaiterais qu'il n'apparaisse qu'en onmouseover
un idée?
merci
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 26 mars 2009 à 18:50
<style>
#bloc { display:none; }
</style>
<script>
function afficheId(baliseId)
{ document.getElementById(baliseId).style.display='block'; }
function cacheId(baliseId)
{ document.getElementById(baliseId).style.display='none'; }
</script>
<map name="map">
</map>
"bloc" id"bloc">Ouzoud
si si ( l'impératrice ) ça baigne
>>pas possible d'afficher une div sur une map sans javascript
et pourquoi ça ne fonctionnerait pas ?
avec les vieux navigateurs et pas le bon doctype peut-être
mais :hover aujourd'hui ça devrait fonctionner ( pas testé )
demnatis
Messages postés33Date d'inscriptionmardi 23 décembre 2008StatutMembreDernière intervention 2 avril 2009 27 mars 2009 à 13:23
Bonjour Petrole et a tous,
Merci pour ton aide.
La dernière réponse de TheBul... est claire, effectivement.
Celles auparavant, pas assez pour moi qui est un niveau en javascript "débutant".
Désespéré, j'ai tenté un nouveau post.
Merci encore et mes excuses.
Le script de Thebul... fonctionne mais pas comme souhaité:
j'ai 2 map area (pour le moment)
les 2 div s'affichent au chargement de la page.(pas normal)
onmouseout la div"1" disparait et réaparait au onmouseover.ok
la div "2", elle reste en permanence affichée et ne répond pas aux comme onmouse...
derniere souci, malgré la fonction CSS display:none; les div s'affichent aux chargement de la page.
c'est un casse tete, si si...(r'culaire),
depuis trois jours, sans trouver d'expliquation a mon probleme.
Désolé d'etre lourd mais je plante
bonne journée a tous
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 27 mars 2009 à 13:55
>>les 2 div s'affichent au chargement de la page
tu ne mets pas le css nécessaire ( style="display:none" ça baigne toujours )
>>...La div "2", elle reste en permanence affichée....
ah ? tu as 2 div maintenant ?
tu n'en aurais pas autant que d'area ? par hasard ?
=> bah, quand tu en affiches une, cache donc la précédente ! non ?
>>sans trouver d'explication a mon probleme.
c'est un problème de logique, d'algorithme si tu veux, rien d'autre
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 27 mars 2009 à 15:03
# s'applique à un ID
comme tu auras (?) plusieurs div, il faudra probablement
faire la même chose pour tous, dans ce cas mettre .bloc
dans le css et dans les div class="bloc"