修改iframes内元素的样式

Posted Lee_Yu_Fan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改iframes内元素的样式相关的知识,希望对你有一定的参考价值。

前言:网页可以使用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') //获取父级窗口中id为box的DOM元素
  .style 
  .background='red' //修改DOM元素的背景色

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

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

以上是关于修改iframes内元素的样式的主要内容,如果未能解决你的问题,请参考以下文章

如何修改iframe内的页面的元素的样式。。。。

如何修改iframe内的页面的元素的样式

前端样式修改心得

点击元素后javascript如何修改class并且刷新后保留样式?

JS 获取 iframe内元素,及iframe与html调用

iframe中嵌套的网页样式修改