键盘类
键盘提供了一个用于管理虚拟键盘的 API。 高级 API 是 Keyboard.type(),它接收原始字符并在您的页面上生成正确的 keydown、keypress/input 和 keyup 事件。
签名
export declare abstract class Keyboard
备注
为了更精细的控制,您可以使用 Keyboard.down()、Keyboard.up() 和 Keyboard.sendCharacter() 手动触发事件,就像它们是从真实的键盘生成的一样。
在 macOS 上,像 ⌘ A
-> 全选这样的键盘快捷键不起作用。 请参阅 #1313。
此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 Keyboard
类的子类。
示例 1
一个按住 Shift
以选择和删除某些文本的示例
await page.keyboard.type('Hello World!');
await page.keyboard.press('ArrowLeft');
await page.keyboard.down('Shift');
for (let i = 0; i < ' World'.length; i++)
await page.keyboard.press('ArrowLeft');
await page.keyboard.up('Shift');
await page.keyboard.press('Backspace');
// Result text will end up saying 'Hello!'
示例 2
一个按下 A
的示例
await page.keyboard.down('Shift');
await page.keyboard.press('KeyA');
await page.keyboard.up('Shift');
方法
方法 | 修饰符 | 描述 |
---|---|---|
down(key, options) | 分派一个 备注 如果 在按键按下一次后,后续对 Keyboard.down() 的调用会将 repeat 设置为 true。要释放按键,请使用 Keyboard.up()。 修饰键会影响 Keyboard.down()。按住 | |
press(key, options) | Keyboard.down() 和 Keyboard.up() 的快捷方式。 备注 如果 修饰键会影响 Keyboard.press()。按住 | |
sendCharacter(char) | 分派一个 备注 修饰键不会影响 Keyboard.sendCharacter。按住 | |
type(text, options) | 为文本中的每个字符发送一个 备注 要按下像 修饰键不会影响 | |
up(key) | 分派一个 |