2022-08-06 14:49:20 +00:00
---
sidebar_label: BrowserContext.waitForTarget
---
# BrowserContext.waitForTarget() method
This searches for a target in this specific browser context.
2022-10-24 14:31:12 +00:00
#### Signature:
2022-08-06 14:49:20 +00:00
```typescript
class BrowserContext {
waitForTarget(
predicate: (x: Target) => boolean | Promise< boolean > ,
options?: {
timeout?: number;
}
): Promise< Target > ;
}
```
## Parameters
2023-03-06 13:53:56 +00:00
| Parameter | Type | Description |
| --------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| predicate | (x: [Target ](./puppeteer.target.md )) => boolean \| Promise< boolean> | A function to be run for every target |
| options | { timeout?: number; } | _(Optional)_ An object of options. Accepts a timeout, which is the maximum wait time in milliseconds. Pass < code > 0</ code > to disable the timeout. Defaults to 30 seconds. |
2022-08-06 14:49:20 +00:00
**Returns:**
Promise< [Target](./puppeteer.target.md)>
Promise which resolves to the first target found that matches the `predicate` function.
## Example
An example of finding a target for a page opened via `window.open` :
```ts
await page.evaluate(() => window.open('https://www.example.com/'));
const newWindowTarget = await browserContext.waitForTarget(
target => target.url() === 'https://www.example.com/'
);
```