2012-02-03 44 views
9

Webワーカーの仕様では、「DOMはスレッドセーフではないため、DOMにアクセスできない」と言われています。 WebワーカーとHTMLページDOMについては論理的ですが、XmlHttpRequest呼び出しからXMLを解析する際には、実際には非常に制限があります。結局のところ、その呼び出しの基本処理は非同期であり、フォアグラウンドスレッドにはほとんど影響しません。フォアグラウンドスレッドを遅くするXMLの解析(XMLアプリケーションを扱う場合)WebワーカーでのXMLの解析

Web WorkerでXMLを解析するために、私自身のXMLパーサをJavascriptでビルドする以外の方法はありますか(私はXPCOMのルートはありません)。

答えて

13

オム - 数時間後に自分自身を答える - これはよく人々に非常に有用であることがわかっている情報の一部ことがあります

JavaScriptで書かれたオープンソースの、フル機能のXMLパーサがある - とそれは、Web労働者に非常にうまく機能:

XML-JS

は基本的に、あなただけのW3C DOMを使用するためのドキュメントに従った後、あなたの労働者にtinyxmlsax.jsとtinyxmlw3cdom.jsを含める必要があります。

非常にマッサージはほとんどありませんでしたが、通常のDOMParser(フォアグラウンドで実行している場合)とxmljsパーサーの両方で動作するように私のコードを取得しました。

明らかに遅いですが、実際にはあまり問題にはなりません。結局のところ、バックグラウンドで実行しています。

+0

もう1つです:https://github.com/isaacs/sax-js –