Skip to content

Commit 34db39e

Browse files
authored
fix: improve mouse actions (puppeteer#10021)
1 parent 285c791 commit 34db39e

12 files changed

+400
-109
lines changed

docs/api/index.md

+3
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,8 @@ sidebar_label: API
9797
| [LaunchOptions](./puppeteer.launchoptions.md) | Generic launch options that can be passed when launching any browser. |
9898
| [MediaFeature](./puppeteer.mediafeature.md) | |
9999
| [Metrics](./puppeteer.metrics.md) | |
100+
| [MouseClickOptions](./puppeteer.mouseclickoptions.md) | |
101+
| [MouseMoveOptions](./puppeteer.mousemoveoptions.md) | |
100102
| [MouseOptions](./puppeteer.mouseoptions.md) | |
101103
| [MouseWheelOptions](./puppeteer.mousewheeloptions.md) | |
102104
| [NetworkConditions](./puppeteer.networkconditions.md) | |
@@ -135,6 +137,7 @@ sidebar_label: API
135137
| [executablePath](./puppeteer.executablepath.md) | |
136138
| [KnownDevices](./puppeteer.knowndevices.md) | A list of devices to be used with [Page.emulate()](./puppeteer.page.emulate.md). |
137139
| [launch](./puppeteer.launch.md) | |
140+
| [MouseButton](./puppeteer.mousebutton.md) | Enum of valid mouse buttons. |
138141
| [networkConditions](./puppeteer.networkconditions.md) | |
139142
| [PredefinedNetworkConditions](./puppeteer.predefinednetworkconditions.md) | A list of network conditions to be used with [Page.emulateNetworkConditions()](./puppeteer.page.emulatenetworkconditions.md). |
140143
| [puppeteer](./puppeteer.puppeteer.md) | |

docs/api/puppeteer.mouse.click.md

+6-12
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,17 @@ Shortcut for `mouse.move`, `mouse.down` and `mouse.up`.
1010

1111
```typescript
1212
class Mouse {
13-
click(
14-
x: number,
15-
y: number,
16-
options?: MouseOptions & {
17-
delay?: number;
18-
}
19-
): Promise<void>;
13+
click(x: number, y: number, options?: MouseClickOptions): Promise<void>;
2014
}
2115
```
2216

2317
## Parameters
2418

25-
| Parameter | Type | Description |
26-
| --------- | --------------------------------------------------------------------- | ------------------------------------------------ |
27-
| x | number | Horizontal position of the mouse. |
28-
| y | number | Vertical position of the mouse. |
29-
| options | [MouseOptions](./puppeteer.mouseoptions.md) &amp; { delay?: number; } | _(Optional)_ Optional <code>MouseOptions</code>. |
19+
| Parameter | Type | Description |
20+
| --------- | ----------------------------------------------------- | ------------------------------------------- |
21+
| x | number | Horizontal position of the mouse. |
22+
| y | number | Vertical position of the mouse. |
23+
| options | [MouseClickOptions](./puppeteer.mouseclickoptions.md) | _(Optional)_ Options to configure behavior. |
3024

3125
**Returns:**
3226

docs/api/puppeteer.mouse.down.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ sidebar_label: Mouse.down
44

55
# Mouse.down() method
66

7-
Dispatches a `mousedown` event.
7+
Presses the mouse.
88

99
#### Signature:
1010

@@ -16,9 +16,9 @@ class Mouse {
1616

1717
## Parameters
1818

19-
| Parameter | Type | Description |
20-
| --------- | ------------------------------------------- | ------------------------------------------------ |
21-
| options | [MouseOptions](./puppeteer.mouseoptions.md) | _(Optional)_ Optional <code>MouseOptions</code>. |
19+
| Parameter | Type | Description |
20+
| --------- | ------------------------------------------- | ------------------------------------------- |
21+
| options | [MouseOptions](./puppeteer.mouseoptions.md) | _(Optional)_ Options to configure behavior. |
2222

2323
**Returns:**
2424

docs/api/puppeteer.mouse.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -80,12 +80,12 @@ await browser
8080
| Method | Modifiers | Description |
8181
| ----------------------------------------------------------------------- | --------- | ---------------------------------------------------------------------------------------- |
8282
| [click(x, y, options)](./puppeteer.mouse.click.md) | | Shortcut for <code>mouse.move</code>, <code>mouse.down</code> and <code>mouse.up</code>. |
83-
| [down(options)](./puppeteer.mouse.down.md) | | Dispatches a <code>mousedown</code> event. |
83+
| [down(options)](./puppeteer.mouse.down.md) | | Presses the mouse. |
8484
| [drag(start, target)](./puppeteer.mouse.drag.md) | | Dispatches a <code>drag</code> event. |
8585
| [dragAndDrop(start, target, options)](./puppeteer.mouse.draganddrop.md) | | Performs a drag, dragenter, dragover, and drop in sequence. |
8686
| [dragEnter(target, data)](./puppeteer.mouse.dragenter.md) | | Dispatches a <code>dragenter</code> event. |
8787
| [dragOver(target, data)](./puppeteer.mouse.dragover.md) | | Dispatches a <code>dragover</code> event. |
8888
| [drop(target, data)](./puppeteer.mouse.drop.md) | | Performs a dragenter, dragover, and drop in sequence. |
89-
| [move(x, y, options)](./puppeteer.mouse.move.md) | | Dispatches a <code>mousemove</code> event. |
90-
| [up(options)](./puppeteer.mouse.up.md) | | Dispatches a <code>mouseup</code> event. |
89+
| [move(x, y, options)](./puppeteer.mouse.move.md) | | Moves the mouse to the given coordinate. |
90+
| [up(options)](./puppeteer.mouse.up.md) | | Releases the mouse. |
9191
| [wheel(options)](./puppeteer.mouse.wheel.md) | | Dispatches a <code>mousewheel</code> event. |

docs/api/puppeteer.mouse.move.md

+7-13
Original file line numberDiff line numberDiff line change
@@ -4,29 +4,23 @@ sidebar_label: Mouse.move
44

55
# Mouse.move() method
66

7-
Dispatches a `mousemove` event.
7+
Moves the mouse to the given coordinate.
88

99
#### Signature:
1010

1111
```typescript
1212
class Mouse {
13-
move(
14-
x: number,
15-
y: number,
16-
options?: {
17-
steps?: number;
18-
}
19-
): Promise<void>;
13+
move(x: number, y: number, options?: MouseMoveOptions): Promise<void>;
2014
}
2115
```
2216

2317
## Parameters
2418

25-
| Parameter | Type | Description |
26-
| --------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
27-
| x | number | Horizontal position of the mouse. |
28-
| y | number | Vertical position of the mouse. |
29-
| options | { steps?: number; } | _(Optional)_ Optional object. If specified, the <code>steps</code> property sends intermediate <code>mousemove</code> events when set to <code>1</code> (default). |
19+
| Parameter | Type | Description |
20+
| --------- | --------------------------------------------------- | ------------------------------------------- |
21+
| x | number | Horizontal position of the mouse. |
22+
| y | number | Vertical position of the mouse. |
23+
| options | [MouseMoveOptions](./puppeteer.mousemoveoptions.md) | _(Optional)_ Options to configure behavior. |
3024

3125
**Returns:**
3226

docs/api/puppeteer.mouse.up.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ sidebar_label: Mouse.up
44

55
# Mouse.up() method
66

7-
Dispatches a `mouseup` event.
7+
Releases the mouse.
88

99
#### Signature:
1010

@@ -16,9 +16,9 @@ class Mouse {
1616

1717
## Parameters
1818

19-
| Parameter | Type | Description |
20-
| --------- | ------------------------------------------- | ------------------------------------------------ |
21-
| options | [MouseOptions](./puppeteer.mouseoptions.md) | _(Optional)_ Optional <code>MouseOptions</code>. |
19+
| Parameter | Type | Description |
20+
| --------- | ------------------------------------------- | ------------------------------------------- |
21+
| options | [MouseOptions](./puppeteer.mouseoptions.md) | _(Optional)_ Options to configure behavior. |
2222

2323
**Returns:**
2424

docs/api/puppeteer.mousebutton.md

+10-2
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,18 @@
22
sidebar_label: MouseButton
33
---
44

5-
# MouseButton type
5+
# MouseButton variable
6+
7+
Enum of valid mouse buttons.
68

79
#### Signature:
810

911
```typescript
10-
export type MouseButton = 'left' | 'right' | 'middle' | 'back' | 'forward';
12+
MouseButton: Readonly<{
13+
Left: 'left';
14+
Right: 'right';
15+
Middle: 'middle';
16+
Back: 'back';
17+
Forward: 'forward';
18+
}>;
1119
```
+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
sidebar_label: MouseClickOptions
3+
---
4+
5+
# MouseClickOptions interface
6+
7+
#### Signature:
8+
9+
```typescript
10+
export interface MouseClickOptions extends MouseOptions
11+
```
12+
13+
**Extends:** [MouseOptions](./puppeteer.mouseoptions.md)
14+
15+
## Properties
16+
17+
| Property | Modifiers | Type | Description | Default |
18+
| -------- | --------------------- | ------ | -------------------------------------------------------------- | ------- |
19+
| delay | <code>optional</code> | number | Time (in ms) to delay the mouse release after the mouse press. | |
+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
sidebar_label: MouseMoveOptions
3+
---
4+
5+
# MouseMoveOptions interface
6+
7+
#### Signature:
8+
9+
```typescript
10+
export interface MouseMoveOptions
11+
```
12+
13+
## Properties
14+
15+
| Property | Modifiers | Type | Description | Default |
16+
| -------- | --------------------- | ------ | ------------------------------------------------------------------------------------------ | -------------- |
17+
| steps | <code>optional</code> | number | Determines the number of movements to make from the current mouse position to the new one. | <code>1</code> |

docs/api/puppeteer.mouseoptions.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ export interface MouseOptions
1212

1313
## Properties
1414

15-
| Property | Modifiers | Type | Description | Default |
16-
| ---------- | --------------------- | ----------------------------------------- | ----------- | ------- |
17-
| button | <code>optional</code> | [MouseButton](./puppeteer.mousebutton.md) | | |
18-
| clickCount | <code>optional</code> | number | | |
15+
| Property | Modifiers | Type | Description | Default |
16+
| ---------- | --------------------- | ----------------------------------------- | ----------------------------------------- | ------------------- |
17+
| button | <code>optional</code> | [MouseButton](./puppeteer.mousebutton.md) | Determines which button will be pressed. | <code>'left'</code> |
18+
| clickCount | <code>optional</code> | number | Determines the click count for the mouse. | <code>1</code> |

0 commit comments

Comments
 (0)