gpt4 book ai didi

javascript - 如何加载与 html 混合的 JavaScript

转载 作者:行者123 更新时间:2023-12-02 20:47:48 24 4
gpt4 key购买 nike

因此,我需要从远程页面中提取一些 JavaScript,该页面将(无值(value)的)HTML 与(有用的)JavaScript 结合在一起。该页面,称之为,http://remote.com/data.html ,看起来像这样(我知道这很疯狂):

<html>
<body>
<img src="/images/a.gif" />
<div>blah blah blah</div><br/><br/>
var data = { date: "2009-03-15", data: "Some Data Here" };

</body>
</html>

所以,我需要在本地页面加载这个数据变量并使用它。

我更愿意使用完全客户端代码来完成此操作。我想,如果我可以将此页面的 HTML 放入本地 JavaScript 变量中,我就可以解析出 JavaScript 代码,对其运行 eval 并很好地使用数据。所以我想在 iframe 中加载远程页面,但我似乎无法在 DOM 中找到 iframe。为什么不呢?:

<script>
alert(window.parent.frames.length);
alert(document.getElementById('my_frame'));
</script>

<iframe name="my_frame" id='my_frame' style='height:1px; width:1px;' frameBorder=0 src='http://remote.com/data.html'></iframe>

第一个警报显示 0,第二个警报显示 null,这没有任何意义。我该如何解决这个问题?

最佳答案

您是否尝试过切换顺序 - 即首先是 iframe,然后是脚本?该脚本在 iframe 插入 DOM 之前运行。

另外,这在类似的情况下对我有用:给 iframe 一个 onload 处理程序:

<iframe src="http://example.com/blah" onload="do_some_stuff_with_the_iframe()"></iframe>

最后但并非最不重要的一点是,请注意跨站脚本问题 - iframe 可能已加载,但你的 JS 可能不允许访问它。

关于javascript - 如何加载与 html 混合的 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/671666/

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