我有一个javascript计算iframe元素的高度和文档高度。然后使用if查看iframe元素是打开还是关闭。当它的高度为1px且显示为无。当它在高度上是34px并且显示是阻止的。我用另一个与这个问题无关的函数来做这一切。问题是为什么当我更改页面时,如果高度小于上一页,它不会重新计算高度并正确设置,但如果高度大于前一页它重新计算并相应地设置高度。我在每个页面的body标签上使用onload =“javascript:autoHeight”,以便每次加载不同的页面时都会调用该函数,并且只有在完成加载后才能正确获取高度。如果您需要更多代码:http://alomadruga.com.br/temp/home.php
function autoHeight(){
var docHeight = $(document).height();
var radioHeight = parent.$("#radioiframe").height();
if (radioHeight == 34){
parent.$('#content').css({'height': docHeight + 34+ 'px'});
alert("radio iframe is on");
}
else {
parent.$('#content').css({'height': docHeight+ 'px'});
alert("radio iframe is off");
}
};
感谢每一个人的帮助,但我设法自己弄清楚,并决定我会发布答案来帮助那些来自这个问题的人。我所做的是,每次运行该函数时,我首先将高度设置为1px,然后让它运行该函数。
function autoHeight(){
parent.$('#content').css({'height': 1+ 'px'});
var docHeight = $(document).height();
var radioHeight = parent.$("#radioiframe").height();
if (radioHeight == 34){
parent.$('#content').css({'height': docHeight + 34+ 'px'});
alert("radio iframe is on");
}
else {
parent.$('#content').css({'height': docHeight+ 'px'});
alert("radio iframe is off");
}
};
答案 0 :(得分:0)
尝试应用此CSS:
html {height:100%}
body {
margin:0; padding:0;
height:auto !important;
height:100%;
min-height:100%;
position:relative;
}