关于js iframe获取父子页面中元素和的小迷惑。望大神指点迷津,小弟不胜感激!

关于js iframe获取父子页面中元素和的小迷惑。望大神指点迷津,小弟不胜感激!,第1张

第一句能运行你可以理解为历史遗留问题, 早年没有标凖各个浏览器都有自己的一套设计, 某些就被保留下来了, 即使不属於W3C标凖

这里恰好你的浏览器把myFrame这个[name]与它的window对象关联了, 你再给它个id试试, 可能结果就不一样了(不同浏览器略有差异)

第二条不能运行首先是因为你使用的是getElementsByTagName, 而你应该使用的是getElementsByName, 因此documentgetElementsByTagName("myFrame")就没有获取到[name=myFrame]这个DOM对象 其次正如你理解的, 这个是个DOM对象, 而不是它的window对象

你需要

documentgetElementsByName("myFrame")[0]contentWindowdocument

这个contentWindow是W3C标凖中的, 所以请放心使用

获取iframe这个标签对象吗 不用jq的话 那就getElementById 或 getElementByName

甚至 直接 引用name

如果是要获取iframe加载的网页里的document的话,,,,那么这里如果不是一个域的话就有跨域问题了

需要准备的材料分别是:电脑、html编辑器、浏览器。

1、首先,打开html编辑器,新建html文件,例如:indexhtml,填写相应html代码。

2、在indexhtml的<script>标签中,输入js代码:

var a = $('#iframe')text();

var s = aindexOf('<iframe><body>');

var e = aindexOf('</body>');

var r = asubstr(s + 14, e - s - 14);

$('#iframe')parent()append(r);

3、浏览器运行indexhtml页面,此时两层iframe里的内容被取出来了。

首先你要能获取到这个iframe的dom对象,假设我们知道它的ID;

var frame = documentgetElementById("ueditor_0");

var frameDocument = framecontentWindowdocument;

iframe中的document对象拿到了,后边如何获取你想要的元素就很简单了吧。

以上就是关于关于js iframe获取父子页面中元素和的小迷惑。望大神指点迷津,小弟不胜感激!全部的内容,包括:关于js iframe获取父子页面中元素和的小迷惑。望大神指点迷津,小弟不胜感激!、泛微 js如何获取iframe、如下图,怎么通过js或jquery获取iframe里面body的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9867117.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存