我有一个 iFrame 显示从单独的服务中提取的内容。但是,内容有一个按钮,可以通过 AJAX 水平加载更多内容,并将内容的高度向下推,从而导致滚动条。
有没有办法让 iFrame 响应这种变化,并在用户加载更多内容时增加它的高度?
我有一个 iFrame 显示从单独的服务中提取的内容。但是,内容有一个按钮,可以通过 AJAX 水平加载更多内容,并将内容的高度向下推,从而导致滚动条。
有没有办法让 iFrame 响应这种变化,并在用户加载更多内容时增加它的高度?
看起来这篇微软文章可能有你的答案:http: //support.microsoft.com/kb/278469
<HTML>
<HEAD>
<SCRIPT LANGUAGE=javascript>
<!--
function reSize()
{
try{
var oBody = ifrm.document.body;
var oFrame = document.all("ifrm");
oFrame.style.height = oBody.scrollHeight + (oBody.offsetHeight - oBody.clientHeight);
oFrame.style.width = oBody.scrollWidth + (oBody.offsetWidth - oBody.clientWidth);
}
//An error is raised if the IFrame domain != its container's domain
catch(e)
{
window.status = 'Error: ' + e.number + '; ' + e.description;
}
}
//-->
</SCRIPT>
</HEAD>
<BODY onload=reSize()>
<iframe onresize=reSize() id=ifrm src=YOUR_PAGE_HERE></iframe>
</BODY>
</HTML>
基本上,点击子文档的 resize 事件,并相应地调整 iframe 的大小。