Skip to main content
Version: Next

Frame.waitForNavigation() method

Signature:

class Frame {
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.

Remarks

This resolves when the frame navigates to a new URL. It is useful for when you run code which will indirectly cause the frame to navigate. Consider this 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'),
]);

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