2020-06-04 14:56:45 +00:00
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home ](./index.md ) > [puppeteer ](./puppeteer.md ) > [BrowserContext ](./puppeteer.browsercontext.md ) > [waitForTarget ](./puppeteer.browsercontext.waitfortarget.md )
## BrowserContext.waitForTarget() method
2020-06-23 05:21:01 +00:00
This searches for a target in this specific browser context.
2020-06-04 14:56:45 +00:00
< b > Signature:< / b >
```typescript
2020-06-23 11:55:42 +00:00
waitForTarget(predicate: (x: Target) => boolean, options?: {
2020-06-04 14:56:45 +00:00
timeout?: number;
}): Promise< Target > ;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
2020-06-23 05:21:01 +00:00
| predicate | (x: [Target ](./puppeteer.target.md )<!-- --> ) => boolean | A function to be run for every target |
| options | { timeout?: number; } | An object of options. Accepts a timout, which is the maximum wait time in milliseconds. Pass < code > 0< / code > to disable the timeout. Defaults to 30 seconds. |
2020-06-04 14:56:45 +00:00
< b > Returns:< / b >
Promise< [Target](./puppeteer.target.md)<!-- --> >
2020-06-23 05:21:01 +00:00
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` <!-- --> :
```js
await page.evaluate(() => window.open('https://www.example.com/'));
const newWindowTarget = await browserContext.waitForTarget(target => target.url() === 'https://www.example.com/');
```