修改iframe里面的样式(怎么改变iframe背景色)

http://www.itjxue.com  2023-02-17 07:17  来源:未知  点击次数: 

iframe样式修改

修改iframe内部元素样式,并且内部内容高度自适应:

iframe srcdoc="" frameborder="0" id="demo" style="vertical-align:top;width:80%" onload="getIframeDom()"/iframe

function getIframeDom(){

$("#demo").contents().find("p").css('margin','0');

$("#demo").contents().find("body").css('margin','0');

changeFrameHeight();

}

window.onresize=function(){

changeFrameHeight();

}

function changeFrameHeight(){

var ifm= document.getElementById("demo");

var iheight=$("#demo").contents().find("body").height();

$("#demo").height(iheight);

}

如何修改iframe中的样式

首先给iframe标签起一个id,页面加载完毕后,在这个id?的contentWindow中找到你要修改的标签的id

window.onload=()={

????????var_iframe=document.getElementById('outBox').contentWindow.document.getElementById('map')//iframe下的id

????????_iframe.style.background="pink";//修改样式

????}

更改iframe内元素样式

所有的操作必须确保在$('iframename').load(function(){})内进行;

$('#iframe').load(function({

? ? ?所要进行的操作

}))确保iframe装载完毕之后进行后续操作;不然你可能得到

var x = document.getElementById('iframe').contentWindow.document.getElementById('container');

console.log(x)?

打印台结果为: // null

var x = document.getElementById('iframe').contentWindow.document

console.log(x)

打印台结果为:

如果要使用jQeury获取frame内元素的话必须确保iframe所引入的页面内引入了jQuery框架;

$('#iframe').load(function () {

? ? var x = document.getElementById('iframe').contentWindow.document.getElementById('container');

? ? x.style.width = "100%";

? ? x.style.height = "100%";

? ? console.log(x)//以iframe中找元素a为例

});

$('#iframe').load(function () {

? ? var cssLink = document.createElement("link");

? ? cssLink.href = "style.css";

? ? cssLink.rel = "stylesheet";

? ? cssLink.type = "text/css";

? ? frames['iframe'].document.body.appendChild(cssLink);

});

(责任编辑:IT教学网)

更多

推荐Painter教程文章