2022-07-05 13:41:43 +00:00
---
sidebar_label: BrowserContext.waitForTarget
---
# BrowserContext.waitForTarget() method
This searches for a target in this specific browser context.
2022-10-24 07:07:05 +00:00
#### Signature:
2022-07-05 13:41:43 +00:00
```typescript
class BrowserContext {
waitForTarget(
predicate: (x: Target) => boolean | Promise< boolean > ,
options?: {
timeout?: number;
}
): Promise< Target > ;
}
```
## Parameters
2023-01-13 17:03:21 +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; } | < i > (Optional)< / i > 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-07-05 13:41:43 +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/'
);
```