浏览器中的顶级框架(Top-Level Frames)是什么?Chrome扩展开发疑问
关于Chrome webRequest API中main_frame的“顶级框架”含义解释
Chrome并没有把所有内容都视为iframe,你对框架的理解存在偏差,下面直白解释下“顶级框架”的具体含义:
- 顶级框架是浏览器标签页的最外层文档容器,是标签页加载内容的根载体,没有任何父框架。比如你在地址栏输入网址后直接加载的页面,就是这个标签页的顶级框架内容,对应的请求类型就是
main_frame。 - iframe是嵌套在顶级框架(或其他iframe)内部的子框架,属于依附性的文档容器,它有独立的上下文但依赖父框架存在,这类请求的类型是
sub_frame。
举个实际场景:
当你打开https://example.com,这个页面的加载请求就是main_frame;如果该页面里嵌入了<iframe src="https://blog.example.com">,那么加载blog.example.com的请求就属于sub_frame。
每个Chrome标签页至少会有一个顶级框架,所有iframe都是它的嵌套子节点,不存在“所有内容都是iframe”的情况——顶级框架是页面内容的基础容器,iframe只是拓展的嵌套内容。
内容的提问来源于stack exchange,提问作者Connor
相关产品推荐
相关产品推荐

