是一段iframe自适应的代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><iframe frameborder="0" id="Detailsframe" onload = "SetCwinHeight(this.id)"></iframe>
function SetCwinHeight(id) {
var iframeid = document.getElementById(id); //iframe id
if (document.getElementById) {
if (iframeid && !window.opera) {
if (iframeid.contentDocument && iframeid.contentDocument.body.offsetHeight) {
if (iframeid.width < iframeid.contentDocument.body.offsetWidth) {
iframeid.width = iframeid.contentDocument.body.offsetWidth + 510 + "px";
}
iframeid.height = iframeid.contentDocument.body.offsetHeight + 30 + "px";
} else if (iframeid.Document && iframeid.Document.body.scrollHeight) {
if (iframeid.width < iframeid.Document.body.scrollWidth) {
iframeid.width = iframeid.Document.body.scrollWidth + 510 + "px";
}
iframeid.height = iframeid.Document.body.scrollHeight + 30 + "px";
}
}
}
}
现在的情况下,我是win7+ie8,显示正好,但是客户端电脑无论是Win7+IE8或者XP+IE8显示出来都是右边空了很大一块,如果我把<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 声明去掉,效果就一样了,不知道为什么?
还有就是为什么body.scrollWidth似乎不是页面的真实值,我如果不加510的话,只显示了一半内容,还有一半要通过滚动条方式出现?
添加回答
举报
0/150
提交
取消