跳至主要内容

框架

简介

一个 页面 可以包含一个或多个与其关联的 框架 对象。每个页面都有一个主框架,页面级交互(如 click)假定在主框架中操作。

页面可以使用 iframe HTML 标签附加额外的框架。这些框架可以被访问以进行框架内的交互。

// Locate element inside frame
var username = await page.FrameLocator(".frame-class").GetByLabel("User Name");
await username.FillAsync("John");

框架对象

可以使用 Page.Frame() API 访问框架对象。

// Create a page.
var page = await context.NewPageAsync();

// Get frame using the frame's name attribute
var frame = page.Frame("frame-login");

// Get frame using frame's URL
var frame = page.FrameByUrl("*domain.");

// Get frame using any other selector
var frameElementHandle = await page.EvaluateAsync("window.frames[1]");
var frame = await frameElementHandle.ContentFrameAsync();

// Interact with the frame
await frame.FillAsync("#username-input", "John");