2011-12-09 13 views
2

下にjqueryコードを変更して、htmlコードのxpathの場所を見つける方法はありますか?または、HTMLに関係なく、独自のjqueryコードがあります(htmlが変更されています)。http://jsbin.com/uhude3/19/edit私はそこにコードを書いているので、訪問してください。私は必要なのである - 私は私のdiv、スパンのXPathの場所を示すために、要素をクリックするよどこに、p、hrefの@ ... ...などクリックした要素のxpathの位置を見つけるためのjqueryスクリプト

jQuery(function($) { 

    $(".rightArrow").click(function() { 
     var rightArrowParents = []; 
     $(this).parents().not('html').each(function() { 
      var entry = this.tagName.toLowerCase(); 
      if (this.className) { 
       entry += "." + this.className.replace(/ /g, '.'); 
      } 
      rightArrowParents.push(entry); 
     }); 
     rightArrowParents.reverse(); 
     alert(rightArrowParents.join(" ")); 
    }); 

}); 

、どのようにして、この私のコードのUPを変更します以下のようになります。

function getXPath(element) 
{ 
    var xpath = ''; 
    for (; element && element.nodeType == 1; element = element.parentNode) 
    { 
     var id = $(element.parentNode).children(element.tagName).index(element) + 1; 
     id > 1 ? (id = '[' + id + ']') : (id = ''); 
     xpath = '/' + element.tagName.toLowerCase() + id + xpath; 
    } 
    return xpath; 
} 

クリックするとxpathが表示されます。どのようにこの2つのコードを組み合わせるか???ここでhttp://jsbin.com/uhude3/19/edit

+0

XSLTソリューションが受け入れられる場合は、短くて簡単なソリューションがあります。あなたはそれを見たいですか? –

+0

はい、どうぞ!感謝 –

+0

私の答えでは、XSLTソリューションへのリンクを提供しました。 –

答えて

1

XSLTソリューションです:Generate/get xpath from XML node java

あなたは、あなたのニーズに適合させることがあります。

+0

はい、感謝は本当に役に立ちますが、私のコードにこのXSLTソリューションを統合する方法:http://jsbin.com/uhude3/19/edit –

+0

@JOJOJO:十分なJavascriptを使用していませんが、正確にXSLTプロセッサが利用可能なMSXML(アクティブXオブジェクトを使用)を呼び出す方法は、FFで使用されるXSLTプロセッサ、またはOperaまたはChromeで使用されるXSLTプロセッサを呼び出す方法とは異なる場合があります。私はこれがおそらくこれらのXSLTプロセッサのそれぞれについて文書化されていると信じています。 –

+0

私はコードを答えで更新しましたが、この2つのコードを組み合わせて動作させる必要があります。ありがとうございます –

関連する問題