javascript – CasperJS:你如何点击所有选择的按钮?

前端之家收集整理的这篇文章主要介绍了javascript – CasperJS:你如何点击所有选择的按钮?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图使用CasperJS作为网页刮刀,并且有一个页面,带有按钮,当点击时将加载数据.所以,我想先点击所有这些按钮,然后在实际进行查询之前等待所有必要的数据.

问题在于Casper,casper.thenClick(selector)点击第一个元素.但是,如何迭代并根据选择器单击每个元素?

请注意,这些按钮没有ids.他们都有通用类选择器.

防爆.

<h3>
    <span>Text 1</span>
    <span>
        <button class="load-btn">show</button>
    </span>
</h3>
<h3>
    <span>Text 2</span>
    <span>
        <button class="load-btn">show</button>
    </span>
</h3>
<h3>
    <span>Text 3</span>
    <span>
        <button class="load-btn">show</button>
    </span>
</h3>

由于某种原因casper.thenClick(“h3:contains(‘text 1’).load-btn”)不起作用.

解决方法

您可以尝试使用评估代替放入DOM中(我认为页面上有jquery).
casper.thenEvaluate(function() {
  $('button.load-btn').click();
});

请记住,您将需要等待某事出现.

casper.wait(2000,function() {...});

或使用waitFor function之一

猜你在找的JavaScript相关文章