--- sidebar_label: BrowserContext.waitForTarget --- # BrowserContext.waitForTarget() method Waits until a [target](./puppeteer.target.md) matching the given `predicate` appears and returns it. This will look all open [browser contexts](./puppeteer.browsercontext.md). #### Signature: ```typescript class BrowserContext { waitForTarget( predicate: (x: Target) => boolean | Promise, options?: WaitForTargetOptions ): Promise; } ``` ## Parameters | Parameter | Type | Description | | --------- | ---------------------------------------------------------------------------- | ------------ | | predicate | (x: [Target](./puppeteer.target.md)) => boolean \| Promise<boolean> | | | options | [WaitForTargetOptions](./puppeteer.waitfortargetoptions.md) | _(Optional)_ | **Returns:** Promise<[Target](./puppeteer.target.md)> ## Example 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/' ); ```