gpt4 book ai didi

javascript - 如何使用 iframe 编写可调整大小的页面?

转载 作者:行者123 更新时间:2023-11-28 00:19:24 25 4
gpt4 key购买 nike

我在与网页相同的域中有一个 iframe。

我有一个标题,我想保持相同的高度(我不知道它是什么,假设是 80px),而正文包含 iframe,它会在调整浏览器大小时调整大小:

----------        --------------
| header | | header |
---------- --------------
| iframe | -> | |
| | | |
| | | .... |
---------- | |
| |
--------------

我正在使用 jQuery 并在 iframe div 上尝试了 height()css(),但它们不会改变 iframe 的尺寸。 iframe 保持相同的较小默认尺寸。

如果我在 iframe CSS 中手动指定百分比,则可以调整大小,但因为这些是百分比,iframe 会超出直接页面的边界并在之后被 chop 足够高的百分比值会将其边框推离屏幕。

我需要一些方法来帮助 iframe 按像素计算自己的边框,以便它保持在页面的边框内。我可以抓取窗口的宽度和高度,但如前所述,从这些值中应用 css()height() 并没有更新 iframe的大小。

再说一次:我在与父页面相同的域中使用 iframe

我如何正确编写调整标题和 iframe 的两者大小的代码,以便 resize() 操作(或调整浏览器窗口的大小)真正起作用?

我试过的代码是这样的:

<html>
<head>
... // load jquery, etc.
<script>
function resize() {
var w = $('#body').width();
var h = $('#body').height();

$('#header').width(w + "px"); // works
$('#header').height("80px"); // works

$('#my_iframe').css("width", w + "px"); // doesn't work
$('#my_iframe').width(w + "px"); // doesn't work, either

$('#my_iframe').css("height", (h-80) + "px"); // doesn't work
$('#my_iframe').height((h-80) + "px"); // doesn't work, either
}
</script>
</head>

<body onresize="resize()" id="body">
<div id="header"><div>
<iframe id="my_iframe" .../>
</body>
</html>

最佳答案

window上绑定(bind)resize事件,并设置iframe的高度:

$('#content').css('height', ($(window).height() - 80) + 'px');

演示:http://jsfiddle.net/Guffa/t4b4j/

关于javascript - 如何使用 iframe 编写可调整大小的页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10026658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com