問題タブ [jsdom]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - jsdom がページに外部スクリプトをロードしていないか実行していない
https://github.com/tmpvar/jsdom/issues#issue/127からクロスポスト
翌日かそこらで最小限のテストケースを投稿します-しかし、他の誰かが同じ問題を抱えているかどうか、または(より可能性が高い)私が愚かなことをしているのかどうかを確認したかった.
Ubuntu 10.04 AMD64 および jsdom@0.1.23 で NodeJS v2.6 を使用しています。
var file = readFileSync("./www/index.html", "utf8"); var window = jsdom.jsdom(file).createWindow();
すべてのインライン スクリプトが実行されますが、外部スクリプトによって提供されるべき変数が欠落しているというエラーが表示されます。
オプションで URL を設定しようとしましたが、src 属性で完全な (http://...) URL を使用しようとしましたが、
jQuerify (デフォルトの jQuery パスを使用) を試してみましたが、正常に動作しますが、jQuery のみを取り込み、他のすべてのスクリプトがまだ不足しています。
失敗したコード/URL を投稿する前に何かヒントはありますか?
ありがとう、
クリス。
javascript - jsdomが外部リソースをロードしない
jsdomに外部スクリプトを実行させることができないようで、具体的な例を見つけることができないようです。テスト関数を呼び出してもエラーは発生しませんが、何も起こりません。
これは私のコードです:
これは、その読み込み中のhtmlです。
私のテスト機能:
javascript - jsdom.env()とjsdom.jsdomの違いは何ですか?
jsdomの使い方についてはまだ霧がかかっています。jsdom.env()とjsdom.jsdomの違いは何ですか?
javascript - nodejs+jsdom、jQueryの挙動がおかしい
以下のコードは、jsdom ドキュメントで提供されているテストを実行するためだけに、server.js ファイルから抜粋した小さなスニペットです。
私が文字通り得た出力はただinside
のもので、サーバーはハングして戻りません。console.log(window);
ウィンドウ オブジェクトが本当に作成されているかどうかを確認するためにデバッグ ステートメントを追加しましたが、オブジェクトの内容の詳細を示すかなり大きな出力ステートメントが生成されます。ただし、私が気づいたことの 1 つは、それがオブジェクトの定義済みメソッドであり、実際には rendersであることを出力が示していないことです。$
window
console.log(window.$);
undefined
jsdom がまだ開発モードであることは理解していますが、何か不足しているものはありますか?
いくつかの背景として、jsdom.env()
メソッドを使用したり、既存の HTML マークアップからドキュメントを作成したりするなど、コードのいくつかのバリエーションを試しましたが、どちらも期待される結果をレンダリングしませんでした。
javascript - JSDOM は、プロジェクトの熱狂的な ctags をセットアップするために機能しますか?
優れた JavaScript の ctags サポートを楽しみにしていたので、 http://zombie.labnotes.org/のようなプロジェクトを使用して ctags をセットアップし、vim ユーザーを満足させられるかどうかを考え続けました。
javascript - jsdomのユースケースは何ですか
このマイクロテンプレートを読んだ後、死んだ記事です。私は興味を持ちました:
- サーバーでDOMを使用すると、テンプレートよりもクリーンで保守しやすいコードが得られるかどうか。
- テンプレートエンジンの代わりにjsdomを使用する方が効率的かどうか。
- jsdomを標準のMVCセットアップのビューに組み込む方法。
そして、一般的にどのような状況では、 EJSやjadeのようなテンプレートエンジンではなく、jsdomのようなサーバー側のDOM抽象化を使用する方が良いでしょう。
質問はnode.jsと他のSSJSに固有です
javascript - jasmine-node で jsdom.jQueryify を使用するには?
jsdom の jQueryify 機能を使用して jasmine-node を使用することは可能ですか? 私がやろうとしているのは、NodeJS を使用して、DOM の存在に依存する JavaScript をテストすることです。
これは私が試したものの縮小されたケースです。スクリプトを実行すると、jasmine-node は仕様を認識しますが、実行しませんexpect()
:
あるいは、ブラウザのような環境を想定した NodeJS でテストするための別の/より良い方法はありますか?
jquery - jsdomとnode.jsを使用してフォームを投稿する
jsdom、jquery、node.jsを使用してWebサイトをスクレイプしています。jsdomを使用してフォームを投稿し、結果の次のページウィンドウを取得する方法はありますか?
これがコードです
これは送信する必要のあるフォームで$('#airbotForm')
あり、結果のページをキャプチャする必要があります。
誰か助けてもらえますか?ありがとう
dom - nodeJS jsdomを使用してイベントリスナーの関数本体にアクセスできますか?
nodeJSでjsdomを使用しています。大きなHTMLドキュメントを読み込み、jQueryを使用してDOMをナビゲートしています。要素がある場合があり、イベントリスナーの関数本体にアクセスする必要があります(onclick)。イベントリスナーがソースHTMLに追加されました。
DOM要素のonclick属性は未定義です。
ところで:私が本当にやりたいのは、ソースで指定されているURL(<rest-of-url>はソースにあるものではなく、実際のURL仕様がそこにあることに注意してください)を取得することです。
jquery - jsdomでrequire('jquery')を使用していますか?
JSDOM の「スクリプト」オプションを使用して、スクレイピング用に jquery をロードできます。しかし、npm に jquery が含まれるようになったので、ノード独自の require メカニズムを使用することが可能かどうか、また良くも悪くも疑問に思っていました。
すべて正常に動作し、更新されたドキュメントが表示されます。しかし、最近では次のように実行することもできます。
どちらがきれいだと思いますか-この新しい方法でjqueryとjsdomを使用する方法がよくわかりません。具体的には、window オブジェクトはどこにあるのでしょうか?