2

これについて助けが必要です。私はJavaScriptでXPathを使用するのが初めてで、これは私を困惑させました。

私のスクリプトは、xmlhttp を使用して Web ページのコンテンツを取得し、それを「div」でラップします。

            div=document.createElement('div');
            div.innerHTML=xmlhttp.responseText.replace(/<img[^>]*>/); 

このラップされた部門の本体コンテンツにアクセスする必要があり、これを行うために Xpath を使用しています。

bodyContent = document.evaluate("//*[@id='bodyContent']", div ,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);
bodyContent = bodyContent.snapshotItem(0);

これはFirefoxでは完全に機能し、必要なXpathObjectを取得しますが、Google Chromeブラウザでは望ましい結果が得られません. 作成された (そして contextNode として渡された) 'div' 要素の bodyContent 部分を返す代わりに、現在のドキュメント ページの bodyContent を返します。

クロムで確認しました-正しいxmlhttp.reponseTextが受信されました。

これに関するアイデアはありますか?

ありがとう、

4

1 に答える 1

2

document.evaluate(".//*[@id='bodyContent']", div ,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null)両方のブラウザで目的の結果が得られますか?

于 2011-06-14T10:55:13.183 に答える