iframe的document操作

2018-08-11  本文已影响0人  Chen_JF

导语:

在我写网页代填插件的时候,有遇到拿不到input元素的时候,这时候我去看元素布局,发现有些网站登录那一块是用iframe标签写的,这时候我需要取到的那就是iframe标签下input元素

1.获取页面上的所有iframe标签遍历获取每一个iframe

let iframes = document.getElementsByTagName("iframe");
for (let i = 0; i < iframes.length; i++) {
       let iframeId = iframes[i].id;
       let currentIframe = document.getElementById(iframeId);
}

取完整iframe元素必须用getElementById的方法获取。

2.获取iframe下document元素

let currentDoc = currentIframe.contentDocument || currentIframe.contentWindow.document  

这里主要拿到iframe的document操作元素,有些浏览器可以直接contentDocument获取document操作元素,有些需要通过contentWindow.document获取

3.获取iframe中输入框

let inputs = currentDoc.getElementsByTagName("input");

这样就能获取iframe所有的输入框标签。

*注意:当iframe跨域的时候,就无法获取iframe的document操作。

上一篇 下一篇

猜你喜欢

热点阅读