Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为包含响应图像的div动态添加高度_Javascript_Jquery_Html_Css_Responsive Design - Fatal编程技术网

Javascript 如何为包含响应图像的div动态添加高度

Javascript 如何为包含响应图像的div动态添加高度,javascript,jquery,html,css,responsive-design,Javascript,Jquery,Html,Css,Responsive Design,我将一个简单的jquery图像滑块放在一个响应容器中。滑块以响应方式工作,但高度以像素为单位设置,在其最大视口宽度下看起来很好,但可以想象,在较小的视口宽度下,滑块和内容之间的距离过大 我想知道是否有一种简单的方法可以使用CSS或jQuery动态设置包含图像滑块的div的高度,从而使其适合所有视口宽度 jQuery: 函数滑动开关(){ var$active=$(“#slideshow DIV.active”); 如果($active.length==0)$active=$(“#幻灯片放映DIV

我将一个简单的jquery图像滑块放在一个响应容器中。滑块以响应方式工作,但高度以像素为单位设置,在其最大视口宽度下看起来很好,但可以想象,在较小的视口宽度下,滑块和内容之间的距离过大

我想知道是否有一种简单的方法可以使用CSS或jQuery动态设置包含图像滑块的div的高度,从而使其适合所有视口宽度

jQuery:

函数滑动开关(){
var$active=$(“#slideshow DIV.active”);
如果($active.length==0)$active=$(“#幻灯片放映DIV:last”);
var$next=$active.next().length?$active.next()
:$(“#幻灯片放映部分:第一”);
$active.addClass('last-active');
$next.css({opacity:0.0})
.addClass(“活动”)
.animate({opacity:1.0},1000,function()){
$active.removeClass('active last active');
});
}
$(函数(){
设置间隔(“滑动开关()”,5000);
});
CSS:

.responsive容器{
宽度:80%;
保证金:0自动;
}
.反应迅速{
显示:块;
最大宽度:100%;
保证金:0自动;
}
#幻灯片放映{
位置:相对位置;
身高:60%;
}
#幻灯片放映部{
位置:绝对位置;
排名:0;
左:0;
z指数:8;
不透明度:0.0;
背景色:#FFF;
}
#幻灯片放映分区激活{
z指数:10;
不透明度:1.0;
}
#幻灯片放映div.last-active{
z指数:9;
}
#幻灯片放映部{
显示:块;
边界:0;
边缘底部:10px;
}
HTML:


是否有一种方法可以动态地将高度添加到:

<div id="slideshow" class="responsive-container">

我不知道这是否重要,但最大图像大小是:531px宽x 400px高。

离散高度转换 CSS允许您设置高度变化的离散宽度

@media (max-width: 979px) and (min-width: 768px) {
  #slideshow {
    height: whatever;
  }
}
例如,如果您不熟悉CSS技巧,请在CSS技巧网站上调整浏览器的大小(请参见上面的链接)。当达到一定宽度时,您将看到布局发生变化。这就是媒体的质疑

连续高度转换 对于连续的高度转换,您需要使用Javascript。这里有一个小jQuery设置,可以帮助您开始

javascript

$(window).resize(function(){
  winWidth = $(window).width();
  $("#resize").height(winWidth*.3);
});
离散高度转换 CSS允许您设置高度变化的离散宽度

@media (max-width: 979px) and (min-width: 768px) {
  #slideshow {
    height: whatever;
  }
}
例如,如果您不熟悉CSS技巧,请在CSS技巧网站上调整浏览器的大小(请参见上面的链接)。当达到一定宽度时,您将看到布局发生变化。这就是媒体的质疑

连续高度转换 对于连续的高度转换,您需要使用Javascript。这里有一个小jQuery设置,可以帮助您开始

javascript

$(window).resize(function(){
  winWidth = $(window).width();
  $("#resize").height(winWidth*.3);
});

是否要在某个点或每次调整大小时添加高度?我要根据图像的高度设置高度。并且,图像的高度由视口宽度决定。是否要在某个点或每次调整大小时添加高度?我要根据图像的高度设置高度。并且,图像的高度由视口宽度决定。媒体查询不是我要找的,因为它不会是高度的流动过渡。您可以使用“最大高度”和“最小高度”添加媒体查询,而不是使用“宽度”添加用于连续过渡的小jQuery代码。这就是你要找的吗,拉斐尔?谢谢你,@DavidChase!我想是的,但我正在努力理解它。然而,我认为有一件丢失了。在我看来,一切都很好。但我希望在第一次加载时,无论您在哪个视口中,高度都是正确的。例如,在桌面视口中,高度是一个数字,而在移动视口中,高度则更小。这样做了吗?有什么可以选择图像或元素的宽度/高度而不是窗口吗?媒体查询不是我想要的,因为它不会是一个流畅的高度过渡。您可以添加具有最大高度和最小高度的媒体查询,而不是宽度添加一个用于连续过渡的jQuery代码。这就是你要找的吗,拉斐尔?谢谢你,@DavidChase!我想是的,但我正在努力理解它。然而,我认为有一件丢失了。在我看来,一切都很好。但我希望在第一次加载时,无论您在哪个视口中,高度都是正确的。例如,在桌面视口中,高度是一个数字,而在移动视口中,高度则更小。这样做了吗?有什么东西可以选择图像或元素的宽度/高度而不是窗口?