Skip to main content
Version: Next

Frame.waitForNavigation() method

Waits for the frame to navigate. It is useful for when you run code which will indirectly cause the frame to navigate.

Usage of the History API to change the URL is considered a navigation.

Signature:

class Frame {
abstract waitForNavigation(options?: {
timeout?: number;
waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
}): Promise<HTTPResponse | null>;
}

Parameters

ParameterTypeDescription
options{ timeout?: number; waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[]; }(Optional) options to configure when the navigation is consided finished.

Returns:

Promise<HTTPResponse | null>

a promise that resolves when the frame navigates to a new URL.

Example

const [response] = await Promise.all([
// The navigation promise resolves after navigation has finished
frame.waitForNavigation(),
// Clicking the link will indirectly cause a navigation
frame.click('a.my-link'),
]);