切换 iframe
切换 iframe 节点用于将后续 DOM 操作的上下文切换到指定 iframe 内部,或返回主框架。
概述
现代网页常通过 iframe 嵌入第三方内容,浏览器安全策略要求必须在正确的 frame 上下文中才能操作 iframe 内的 DOM。
使用方法
拖入节点后,选择定位方式。本节点提供三种模式:
按索引定位
按页面中 iframe 的出现顺序定位。第一个 iframe 索引为 0,第二个为 1,以此类推。适合页面结构固定、iframe 数量不多的场景。
按 URL 匹配定位
通过 Chrome match patterns 匹配 iframe 的 src 地址。适合 iframe 数量多、顺序不固定的场景,比索引更稳定。
回到主框架
退出当前 iframe 上下文,返回到顶层文档。操作完 iframe 后务必切回主框架,否则下游节点会在 iframe 内部继续执行,操作主页面元素时会找不到目标。
提示
在 iframe 中执行操作后,如果需要操作主页面元素,请务必切换回「主框架」。
参数参考
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| 定位方式 | 下拉选择 | — | index — 按索引定位;url — 按 URL 匹配模式;main — 回到主框架 |
| Iframe 索引 | 文本 | — | 定位方式为索引时使用,支持 {{变量名}} |
| Iframe URL 模式 | 文本 | — | 定位方式为 URL 匹配时必填,Chrome match patterns 格式 |
常见问题
切换到 iframe 后元素仍找不到
现象:已切换 iframe,但后续节点仍报"找不到元素"。
原因:iframe 内部还有嵌套的 iframe(多层嵌套),需要逐层切换。
解决:在开发者工具 Elements 面板中查看 iframe 的嵌套层级,每层用一个切换 iframe 节点。
操作完 iframe 后主页面元素操作报错
现象:在 iframe 内操作完成后,直接操作主页面元素提示找不到。
原因:当前上下文仍在 iframe 内部,未切回主框架。
解决:在 iframe 操作完成后,使用定位方式为「回到主框架」的切换 iframe 节点。