2017-12-30 36 views
0

キャスパーに問題の要素を表示させようとする攻撃方法をいくつか使用しました。 DOM。CasperJSがajax経由でロードされたときにクラス別に要素を見つけることができません

事はthis.waitForResource(url,....)は約2秒後に成功コールバックをうまく実行します(20セットのタイムアウトがあります)。

は、私は、最初に試したthis.click('.class-name')内部casperJS経由this.evaluate(function(){document.getElementsByClassName('.class-name')[0].click()});

クリックで返され、その後CasperError: Cannot dispatch mousedown event on nonexistent selector: .class-name私は、DOMアクションが何をするかわからないながら - 私はそれがまた持っていたと仮定して、私のthis.on('resource.received',....)呼び出し直後は何も捕捉しません効果もありません。 DOMコードはキャスパーで黙って失敗するようです。

要素を選択してクリックすると、ajax経由でDOMにロードされた後にのみファイルをダウンロードできますか?

これはCasperJSよりも優れたライブラリですか?

答えて

0

キャスパーは、あなたの必要性に応じてwaitForSelectorwaitForの方法を持っています。提供される機能が提供セレクタがDOMになるまで待機します

waitForSelector trueを返すまで

waitFor

がお待ちしておりますので、私は、これはあなたが使用したいものですね。

さらに、要素が画面に表示されるまで待つwaitUntilVisibleがあります。

関連する問題