gpt4 book ai didi

javascript - 如果我使用 www,我可以从子域访问 iframe 的内容吗?在主域?

转载 作者:可可西里 更新时间:2023-11-01 01:49:54 25 4
gpt4 key购买 nike

我正在尝试访问和编辑 iframe 的内容。 iframe 指向我自己域中子域上的一个页面。这是我正在使用的 javascript 代码,尽管它并不重要。

$('iframe').load(function(){
$('div.code textarea.html').val($(this).contents()[0].html());
});

当我运行它时,它说我没有从 www.domain.com 访问 example.domain.com 的权限。那么我尝试访问的域是否有 www 有关系吗?因为我的主机不允许我不使用 www.

最佳答案

默认情况下,Same-Origin-Policy 需要完全相同的主机名。

要告诉它不要,设置:

document.domain= 'domain.com';

来自父 (www.) 文档和 iframe(示例)文档中的脚本。

请注意,从脚本设置静态写入的 iframe(或图像)的加载是不可靠的,因为可以想象 iframe 可能会在解析器读取 iframe 标记和读取脚本之间完全加载设置 onload 的标签。

为避免这种情况,要么将事件处理程序包含为内联“<iframe onload="doSomething()"' 属性(内联事件处理具有某种目的的少数几个地方之一),要么,如果可接受的可访问性,创建来自脚本的 iframe 元素本身,在编写 src 并将其添加到页面之前设置 onload。

关于javascript - 如果我使用 www,我可以从子域访问 iframe 的内容吗?在主域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1364776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com