我想在边栏旁边放一个iframe。侧边栏的常量为250px,我希望iframe的宽度可以填充屏幕的其余部分。所以它的宽度是窗口大小减去250px。我需要这个动态改变。我坚持使用现有的代码。
<script type="text/javascript">$(window).resize(function() {
$('iframe').prepend(width:$(window).width()px;);
});
</script>
<div style="float:left;"><iframe src="iframe url"
frameborder="0"
noresize="noresize" id ="iframe"
style="position:absolute; background:transparent; width:75%;height:100%;top:38px;border:none;padding:0;" />
</iframe>
</div>
这是javascript和iframe。我做错了什么?
答案 0 :(得分:1)
使用此JS:
$(function() {
var newwidth = $(window).width() - 250;
$('iframe').css({width: newwidth+'px'});
});
$(window).resize(function() {
var newwidth = $(window).width() - 250;
$('iframe').css({width: newwidth+'px'});
});
你还应该制作周围的DIV位置:相对于使用绝对定位。
答案 1 :(得分:0)
如果屏幕更大,这将用于填充您响应的任何空间并保持原始大小: https://jsfiddle.net/koaab543/2/
我使用原始高度和宽度来计算比例。然后使用css获取当前宽度,限制为空间大小,并从中获得新的高度。
height / width = x / currentWidth
function responseveIframe() {
$('iframe').height(
$('iframe').attr("height") / $('iframe').attr("width") * $('iframe').width()
);
}
responseveIframe();
$(window).resize(function() {
responseveIframe();
});
iframe {
max-width: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<iframe width="854" height="480" src="https://www.youtube.com/embed/C0DPdy98e4c"></iframe>