Page 1 sur 1

recuperer chemin de balise

Posté : 15 sept. 2014, 10:35
par WENKz
Bonjour, j'ai précédement poster ce meme topic dans html et css mais je pense qu'il est plus convenable de le poster dans la cat javascript
Bonjour, je voudrais savoir comment récupérer le chemin de balise html par exemple lorsque je clique sur un titre d'un article est bien que cela me retourne #main > .id_article >.nom_article, je ne sais pas trop ou chercher et vers quoi je sais qu'il s'agit de parsing mais je suppose qu'il faut utiliser du javascript si vous savez vers ou chercher, merci d'avance
Merci de vos réponses d'avance ;)

Re: recuperer chemin de balise

Posté : 23 sept. 2014, 21:57
par Aureusms
Jquery peut t'aider : ici lorsque tu cliques sur la balises <a> (un lien)

[javascript]$(document).on({
click : function () {
alert ($(this).nodeName);
}
},'a');
[/javascript]
Ensuite tu remontes la chaines via parent() pour allez jusqu'à body et tu affiches le tout

Re: recuperer chemin de balise

Posté : 24 sept. 2014, 09:40
par WENKz
Merci de ton aide :) mais comment utilise t'on le parent() ????

Re: recuperer chemin de balise

Posté : 25 sept. 2014, 10:30
par arnaud69
Bonjour

http://api.jquery.com/parent/

bonne journée

Re: recuperer chemin de balise

Posté : 26 sept. 2014, 11:25
par Aureusms
Bonjour,

Jquery te permet de récupérer
  • la balise parent via parent(),
    tous les parents via parents() et jusqu'à html et body inclus
    tous les parents excepté certains via parentsUntil() : ex tous les parents jusqu'à body : parentsUntil("body")
Dans ton cas, je pense qu'il est plus adapté d'utilisé parentsUntil pour récupérer jusqu'à la balise que tu veux (je prendrais body pour l'exemple).
Les fonctions "parent" récupèrent ainsi une pile que tu peux lire via la fonction each() par exemple :

[javascript]$(document).on({
click : function () {
$(this).parentsUntil("body").each(function () {
alert ($(this).nodeName);
});
}
},'a');[/javascript]

Ainsi dans l'exemple ci-dessus, dès que tu cliques sur la balise <a> (un lien), il récupère tous les parents jusqu'à body excepté et lit tous les "nodename" qu'il affiche avec la fonction alert().
Mais tu peux aussi stocker ces valeurs pour les traiter par la suite (dans un tableau par exemple ou dans une variable "string" comme ci-après)

[javascript]var txt = "";
$(document).on({
click : function () {
$(this).parentsUntil("body").each(function () {
txt += $(this).nodeName)+" ";
});
}
},'a');
alert (txt);[/javascript]