2009-09-28 7 views
3

je dois rechercher le document html pour <p class="content"> text here </p>i besoin le chemin complet du noeud dom de l'élément

puis sortie le chemin complet du noeud (CSS ou XPATH)

pour isntance

html > body > div class ="something" > table > tr > p class="content" 

J'ai essayé avec nokogiri mais il ne gère pas la classe et d'autres attributs bien ..

J'ai besoin d'un analyseur qui le fait sans problème.

Répondre

7

Ok, essayez ceci:

var path = []; 

var el = document.getElementById('myNode'); 

do { 
    path.unshift(el.nodeName + (el.className ? ' class="' + el.className + '"' : '')); 
} while ((el.nodeName.toLowerCase() != 'html') && (el = el.parentNode)); 

alert(path.join(" > ")); 
+0

diriez-vous si l'élément ne marche pas avoir un id. (Je n'ai pas écrit la page, je peux la traiter après le rendu)? – rcphq

+0

utilisez la méthode que vous avez pour obtenir une référence à cet élément - 'getElementByTagName', ou jQuery ou autre. – nickf

Questions connexes