5

我不认为这是可能的,但是,我发现了这句话:

“强烈建议不要同时使用允许脚本和允许同源,因为这允许嵌入文档以编程方式删除沙盒属性。”

我的 iframe 需要有一个沙箱,但仅当我在某些 URL 中浏览时,嵌入式浏览上下文尝试将内容导航(加载)到顶级浏览上下文(跳出框架......)

在其他页面上,沙箱需要完全删除,因为它不允许我浏览来自不同来源的网站......

尝试导航的框架是沙盒的,因此不允许导航其祖先。

以编程方式更改沙箱:

document.getElementById("frame").sandbox = "";

...也不起作用,因为这仍然存在限制...因此,我需要以某种方式完全删除该属性,我将如何去做?

4

2 回答 2

6

这些标志仅在 iframe 的嵌套浏览上下文被导航时生效。删除它们或删除整个沙盒属性对已加载的页面没有影响。

更多信息 -这里

于 2013-04-21T19:52:51.120 回答
0

您可以从元素中删除沙盒属性,iframe.removeAttribute("sandbox")这将使 iframe 对于您加载到其中的下一个内容(而不是当前加载的内容)不被沙盒化。

于 2020-05-05T07:43:17.380 回答