使用 Javascript 获取和替换 iframe 中的字符串

Get and replace string inside the iframe using Javascript

提问人:Sted 提问时间:9/2/2022 最后编辑:Sted 更新时间:9/2/2022 访问量:257

问:

我想将字符串放在 iframe 中,从 到_top_blank

例:

我的域名 :example.com

来自 iframe 域的数据:example.net

iframe 内的字符串

<a href="https://www.example.com" target="_top">foo</a><br />
<a href="https://www.example.net" target="_top">bar</a>

我的尝试:

const frame = document.querySelectorAll('a[target="_top"]').forEach(el => el.target = '_blank');

我的代码可以很好地替换 iframe 外部的字符串,但它不能替换 iframe 内部的字符串。

JavaScript HTML jQuery DOM iframe

评论

1赞 epascarello 9/2/2022
因为 iframe 中的内容不是父级的一部分。如果 iframe 位于另一个域中,则由于同源策略,您无法执行任何操作来访问它。如果它是同一个域,则必须访问 iframe 的内容并在其 DOM 上执行相同类型的代码。
0赞 Sted 9/2/2022
它来自沙盒,但不受沙盒保护async
0赞 epascarello 9/2/2022
因此,如果是同一域,则需要访问内容 stackoverflow.com/questions/926916/...
0赞 Sted 9/2/2022
没有伴侣。它不是同一个域。我从不同的域获取数据。那么,没有办法更改iframe数据?
1赞 epascarello 9/2/2022
不。同源策略可防止您接触来自其他域的内容。

答: 暂无答案