前言网页可以使用iframe元素嵌入其他页面,因此一个页面之中会存在多个窗口;在子页面中,又可以嵌入别的页面,从而形成多级窗口iframe元素遵守同源策略,只有当父页面框架页面来自同一个域名,两者之间才可以通过脚本通信

        window.top:顶级窗口

        window.parent:父级窗口

        window.self当前窗口

1、对于iframe嵌入的窗口,通过document.getElementById方法可以拿到该窗口的DOM节点然后使用content.Window属性获得iframe节点包含window对象使用contentDocument属性获得包含document对象

2、在iframe窗口内部使用window.parent引用父窗口。如果没有父窗口则返回自身

3、iframe嵌入窗口的window对象存在一个frameElement属性返回它在父窗口中的DOM节点

一、在当前窗口中获取父级窗口进行样式修改

 parent //获取父窗口 (等同于window.parent)
  .document //获取父级窗口的document文档
  .getElementById('box') //获取父级窗口中idbox的DOM元素
  .style 
  .background='red' //修改DOM元素背景色

二、在当前窗口中获取通过iframe引入的页面(iframe标签id属性是’li‘)

document.getElementById('li').onload = function(){ //通过inload事件监测iframe加载
 document.getElementById('li') //获取到iframe
 .contentWindow //获取到iframewindow
 .document //获取到iframe的document
 .getElementById('xoc') //获取iframeid=‘xoc’的DOM元素
 .style
 .color = 'green'
 }

原文地址:https://blog.csdn.net/m0_73334325/article/details/127842985

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_17247.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注