Page.click() 方法
此方法获取与 selector 匹配的元素,在需要时将其滚动到视图中,然后使用 Page.mouse 点击元素的中心。如果没有与 selector 匹配的元素,该方法会抛出错误。
签名
class Page {
click(selector: string, options?: Readonly<ClickOptions>): Promise<void>;
}
参数
|
参数 |
类型 |
说明 |
|---|---|---|
|
selector |
string |
用于查询页面的选择器。CSS 选择器可以直接传入,Puppeteer 特有的选择器语法则允许按文本、无障碍角色和名称、xpath进行查询,并支持跨 shadow root 组合这些查询。另外,你也可以使用前缀来指定选择器类型。如果有多个元素满足该 |
|
options |
Readonly<ClickOptions> |
(可选) |
返回值:
Promise<void>
当匹配 selector 的元素被成功点击时,该 Promise 会 resolve。如果没有匹配 selector 的元素,该 Promise 将被拒绝。
备注
请注意,如果 click() 触发了导航事件,并且还有一个独立的 page.waitForNavigation() promise 待 resolve,你可能会遇到产生意外结果的竞态条件。点击并等待导航的正确写法如下:
const [response] = await Promise.all([
page.waitForNavigation(waitOptions),
page.click(selector, clickOptions),
]);