美文网首页
layui轮播carousel的高度自适应解决办法

layui轮播carousel的高度自适应解决办法

作者: 枫叶cms | 来源:发表于2019-11-24 15:12 被阅读0次

html代码:

<div class="layui-carousel" id="banner" lay-filter="banner">

    <div carousel-item="">

        <div class="banner-item"><img src="https://img.zcool.cn/community/01c7025690836d32f87574be8473ba.jpg"></div>

        <div class="banner-item"><img src="https://img.zcool.cn/community/0111e75690836e32f87574be3c0e51.jpg"></div>

        <div class="banner-item"><img src="https://img.zcool.cn/community/0185b3554543b50000019ae9c7ed0e.jpg"></div>

        <div class="banner-item"><img src="https://img.zcool.cn/community/017600555ec67b0000009c5021f1b7.jpg"></div>

        <div class="banner-item"><img src="https://img.zcool.cn/community/016303555ec6c50000009af0be03e5.jpg"></div>

    </div>

</div>

js代码

<script> layui.use(['jquery','carousel'], function(){

var $ = layui. $

var carousel = layui.carousel //轮播模块 

var W = $('#banner').width();//获取容器的宽度

var screenImage = $('#banner img');//获取轮播图DOM

var theImage = new Image(); theImage.src = screenImage.attr("src");

var b = theImage.width/theImage.height;//获取轮播图的原始宽高比例

//常规轮播

    carousel.render({

        elem: '#banner'

        ,width: '100%'

        ,height: (W/b).toString()+"px"

        ,arrow: 'always'

    });

$(window).resize(function () { window.location.reload() }) });

</script>

css代码

.banner-item img{width:auto;height:auto; max-width:100%; max-height:100%;}

这个实现方法有一点不好的地方,就是窗口宽度变化会引起重载,前端访问能明显感觉到。兼容性暂时没有考虑。

期待有更好更平滑的方法。

相关文章

网友评论

      本文标题:layui轮播carousel的高度自适应解决办法

      本文链接:https://www.haomeiwen.com/subject/taulwctx.html