Trouver une balise qui se trouve derrière mon curseur

adressprov Messages postés 62 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 24 mars 2007 - 23 mars 2007 à 11:04
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 24 mars 2007 à 11:01
Salut tous,

Comme je l'indique dans mon titre, je souhaiterais connaitre la balise qui se trouve derrière mon click de souris.

Par exemple, j'ai  un code suivant  :

<toto> blablabla </toto>
<titi> gros minet </titi>
<tata> tonton </tata>

 
Je souhaiterais lors du click droit de la souris savoir dans quel balise je me trouve afin de pouvoir afficher un menu personnalisé.
Tout en sachant que le nombre de balise est de un au départ et que par la suite, l'utilisateur pourra en rajouter un nombre indéfini.

J'ai mis ce script pour récupérer les coordonnées de ma souris lors du click droit ou gauche dans deux champs de saisies.

document.getElementById('zone').value = e.pageX ;
document.getElementById('zone1').value = e.pageY;

Avez vous une idée ?

7 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 mars 2007 à 12:05
Bonjour,

>>lors du click droit de la souris savoir dans quel balise je me trouve
    oncontexmenu et tagName ?

    un c'tit exemple ?
    pas sur des balises <toto> <titi> <tata> ! car là c'est du xml
       ( on peut faire aussi )

<script type="text/javascript">
    function test(champ)
    {
        alert(champ.tagName);
       
    }
</script>
       blablabla 

       gros minet

       <label oncontextmenu="test(this);"> tonton </label>



<hr />



Cordialement                Bul            
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 mars 2007 à 12:14
et je ne suis pas réellement sûr de répondre à la vraie question...


mais dans test(champ), champ c'est l'objet sur lequel on a cliqué droit.
    on dispose donc de champ.id, champ.name, champ.value ou champ.innerHTML, champ.style.....

il faut aussi ajouter un return false;
et ces appels peuvent être mis en dynamique.

<hr />                Cordialement            Bul        
0
adressprov Messages postés 62 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 24 mars 2007
23 mars 2007 à 19:31
J'ai adapté ton code pour mes balises.
J'ai donc fait

<toto oncontextmenu= "ajouterbalise(this);"> > blablabla </toto>
<titi oncontextmenu="ajouterbalise(this);"> > gros minet </titi>
<tata oncontextmenu ="ajouterbalise(this);"> > tonton </tata>

En fait, j'arrive à bien récupérer ma première balise, mais certaines balises sont vide. Et je n'arrive donc pas à récupérer leur nom.

Par exemple, l'utilisateur rajout la balise tonton. Au début, elle est vide, mais l'utilisateur peut éventuellement vouloir rajouter une balise à l'intérieur.

Au début
<tonton/>

Puis après
<tonton>
     <tata> blablabla </tata>
</tonton>
0
adressprov Messages postés 62 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 24 mars 2007
23 mars 2007 à 20:53
Arg je ne peux rien mettre dans mes balises <toto>. Car dans une fonction je fais un parentNode et après il ne me la retrouve pas. Et si je ne mets rien sa marche.
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
24 mars 2007 à 06:53
on ne peut pas utiliser une balise <tata> ... ni en html, ni en javascript

tu utilises probablement le xlm / xsl ?

et dans ce cas, comment traiter des balises qu'on ne connait pas ?

il faut un "truc" de ce style :
    <?xml version="1.0" encoding="UTF-8"?>
   
        <nom>albert</nom><telephone>0123456789</telephone>

        <nom>bernard</nom><telephone>1234567890</telephone>
          ...

   

<hr />


Cordialement                Bul    
0
adressprov Messages postés 62 Date d'inscription mercredi 21 juin 2006 Statut Membre Dernière intervention 24 mars 2007
24 mars 2007 à 10:38
Non non, je suis en XHTML.
On m'a dit que je pouvais créer mes propres balises tant que je respecter la norme.
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
24 mars 2007 à 11:01
>>je suis en XHTML

    et je disais quoi ?

>>On m'a dit que je pouvais créer mes propres balises tant que je respecter la norme.
    certes.... en xml.
        en html non.

    le xml / xsl, doit" être traité" pour donner du html où là le
         javascript sera possible car en xml ça n'existe pas.

   il y a plusieurs exemples dans les souces de CodesSources.
       fait une recherche ( mais en voici un ici )

<hr />Cordialement Bul
0
Rejoignez-nous