这两条代码是否都选择并单击了同一个元素?它们实际上是等效的吗?await page.$eval('#loginForm > button', form => form.click());const button = await page.$('#loginForm > button');
await button.click();
1 回答
慕虎7371278
TA贡献1802条经验 获得超4个赞
不总是。
第一个代码只使用 Web-API HTMLElement.click()
。
第二种使用更复杂的方式:
如果需要,此方法将元素滚动到视图中,然后使用 page.mouse 单击元素的中心。如果元素与 DOM 分离,则该方法会引发错误。
我在各种问题中读到过,用户在各种页面上下文中对这些方法产生了不同的影响。有时其中一个可以正常工作,而另一个则不能。
添加回答
举报
0/150
提交
取消