Recuperation d'ID DE DIV

grandpa006 Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 22 juillet 2008 - 22 juil. 2008 à 14:52
grandpa006 Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 22 juillet 2008 - 22 juil. 2008 à 17:10
Bonjour,
Voila je voudrais recuperer l'ID de mes DIV en meme temps que le click de la souris mais j'y arraive pas.
Si une ame charitable a une idée se serait sympa.
Merci par avance :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">.Style8 {font-size: 10px; font-family: Arial, Helvetica, sans-serif; }</style>
<script>
function sourisxy(obj,e)
{
id = obj.id;
x = (navigator.appName=="Netscape") ? e.pageX : event.x + document.body.scrollLeft;
y = (navigator.appName=="Netscape") ? e.pageY : event.y + document.body.scrollTop;
window.location.href="test3.html?x="+x +"&y="+y +"&id="+id;
}
if(navigator.appName.substring(0,3) == "Net")
document.body.captureEvents(Event.mousemove);
document.body.onclick = sourisxy;
</script>
</head>



 

</html>

8 réponses

@karamel Messages postés 1855 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 18 avril 2024 153
22 juil. 2008 à 15:02
onclick="alert(this.id)
0
grandpa006 Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 22 juillet 2008
22 juil. 2008 à 15:12
Bonjour et merci pour l'astuce
Effectivement si je met alert(this.id) je vois que l'id de la div est bien envoyée.
Le probleme se situe donc dans la javascript en haut qui me dit que mon id est indefini.

J'ai remplacer le init() par sourisxy() dans le boydy mais ca marche toujours pas

Une autre idée.

En tout les cas merci pour cette ppiste
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
22 juil. 2008 à 15:19
Bonjour,

pas tout suivi.. mais :
...onclick="sourisxy(this,e);" ... et
document.body.onclick = sourisxy;       ça va pas plaire ça !
                                                     puisqu'il faut le div sur lequel on a cliqué en 1er paramètre déjà...

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
grandpa006 Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 22 juillet 2008
22 juil. 2008 à 15:40
Heu connaissant mon niveau de javascript j'ai pas tout compris.
Si tu pouvais m'aider un peu plus se serait sympa.
Merci en tout cas de vos remarque pertinentes
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
22 juil. 2008 à 16:11
euh... pas un  problème de niveau en javascript.

la fonction ( c'est pareil dans tous les langages ) attend 2 paramètres
    function sourisxy(obj,e)

    lors du click sur les div tu en donnes bien 2 ...onclick= "sourisxy( this,e );"...

    mais sur celui donné dans le body ( pourquoi faire d'ailleurs ? ) :
           pas de paramètres : document.body.onclick = sourisxy;
           ça plante donc. ( de toutes manières comme ce qui t'intéresses
           c'est l'ID des DIV, sur le body, ça ne rime à rien, sucre l'appel )

    sans préjuger du reste ( que je n'ai pas regardé )

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0
@karamel Messages postés 1855 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 18 avril 2024 153
22 juil. 2008 à 16:27
comme j'ai plus ou moins compris j'ai refait la fonction a ma facon
j'espere que c'est ce que tu recherche

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">.Style8 {font-size: 10px; font-family: Arial, Helvetica,

sans-serif; }</style>
<script>
function souriceau(s) {
if(navigator.appName.substring(0,3)=="Net"){
setX = s.clientX+document.body.scrollLeft;
setY = s.clientY+document.body.scrollTop;
}
if(navigator.appName.substring(0,3)!="Net"){
setX=event.x+document.body.scrollLeft;
setY=event.y+document.body.scrollTop;
}
}
document.onmousemove=souriceau;
var ixe
function sourisxy(monid){

ixe=" x"+setX +" y="+setY+" id="+monid;
alert(ixe)
}

</script>
</head>



</html>
0
grandpa006 Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 22 juillet 2008
22 juil. 2008 à 16:58
Très fort ca fonctionne nickel !
Je trouve un nouveau pb auquel je n'avais pas pensé, en fait ca me liste tous les div or je ne voudrais que l'id du DIV de dessus et non pas celui qui contient les autres (en gros pas le div "id1")
Je suppose qu'il doit juste falloir faire un if ... quelquechose .. mais je sais pas faire.
Une derniere chose c'est si il n'y a que le div contenat les autres (que le <div  id="id1") il faut dans ce cas recuperer l'id du div)
Si tu avais une idée se serait super cool.
En tout les cas un gros MERCIIII d'avoir pris le temps !
0
grandpa006 Messages postés 5 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 22 juillet 2008
22 juil. 2008 à 17:10
En fait il faudrait detecter le z-index du calque et  :
- si il est egal à 1 et qu'il n'y a pas de calque au dessus, la fonction de detection de la souris fonctionne
- si il est supérieur à 1 alors la fonction de detection de la souris ne marche pas

Tu penses que c'est faisable ?
Merciiiiiiiii
0
Rejoignez-nous