2010-11-20 17 views
7

私はいくつかの点で、現在のページの言語を決定する必要がありChromeの拡張機能を構築しています。それを行うために、私の計画は、ページのテキストコンテンツ(または少なくともその一部)を抽出し、それを翻訳APIに渡すことです。しかし、私はちょうど、ドキュメントのすべてのtextNode Sを取得する任意の海峡進むべき道を見つけることができませんでした。文書全体のテキストコンテンツを取得する方法は?

あり、十分なテキストコンテンツがあるまで再帰的に$('body').contents()を分析することであるバックアップ計画があるが、それは少しサクサク感じ。おそらくもっと良い方法がありますか?


注:Chromeの拡張機能のAPI、それはそれの一部であったかのように、あなたのスクリプトは、ユーザーのページのDOMにアクセスすることができます。

+0

あなたはクローム拡張機能の開発にPythonの実行ファイルを使用することができます方法はありますか?もしそうなら、 'sgmllib'モジュールの' SGMLParser'を使って実現することができます!ないJS –

+0

ページの完全なHTMLで何をしますかを使用してこれを行う方法は非常に確認してください? – kobe

答えて

8

、同じように簡単にjQueryなしjQuery text() method

$('body').text() 
+0

疑いの余地は明白;)nitpick申し訳ありません – artemave

+0

、しかし、あなたがしたい: '$( '体')テキスト()' – szeryf

+0

右手はい@szeryf。私の謝罪と良いキャッチ! –

10

を使用する:document.body.innerText;

+6

IEの場合のみinnerText、そうでない場合はdocument.body.textContent – kennebec

+0

PPKによると、どちらも多かれ少なかれクロスブラウザー(Firefoxでは存在しないinnerText、IEではtextContent)http://www.quirksmode.org/dom/w3c_htmlです。 HTML – pawel

+2

彼らはしかし異なっている:http://stackoverflow.com/questions/1359469/innertext-works-in-ie-but-not-in-firefox/1359822#1359822 –

10

Javascriptを:

document.body.textContent 
関連する問題