layui轮播图切换会有跳动_解决layui轮播图有数据不显示的情况

在使用layui框架实现轮播图功能时,遇到异步获取数据后图片无法显示的问题。通过浏览器调试发现,HTML代码和数据获取代码存在问题。解决方法是在数据加载完成后,使用`ins.reload({elem: '#test1'})`来重置轮播图,确保数据正确显示。
摘要由CSDN通过智能技术生成

最近接触了一个项目,要实现一个轮播图的功能,因为是在原有的项目上进行二次开发,项目前端用的是layui框架,楼主是后台方向,没怎么接触过前端,在用layui实现轮播图时,发现异步从后台获取数据,但是轮播图片不显示,显示如下:

用浏览器调试发现,

下面已经有几个
了,说明是有数据的。那怎么不显示呢?后来发现是在获取数据之前,页面已经初始化了,当然不能显示啦,这是时候需要在获取数据填充html时,回调reload(options)方法。

先贴上HTML代码:

获取数据代码的反例示例:

layui.use('carousel', function(){

var carousel = layui.carousel;

//建造实例

carousel.render({

elem: '#test1'

,width: '100%' //设置容器宽度

,arrow: 'always' //始终显示箭头

//,anim: 'updown' //切换动画方式

});

//这里是用jQuery异步获取数据的大致代码

$.get("请求的URL",function (data) {

var tpl = $("#charts").html();

laytpl(tpl).render(data,function (html) {

$("#test1").children('div').html(html);

});

});

});

解决问题的代码示例:

layui.use('carousel', function(){

var carousel = layui.carousel;

//建造实例

var ins = carousel.render({

elem: '#test1'

,width: '100%' //设置容器宽度

,arrow: 'always' //始终显示箭头

//,anim: 'updown' //切换动画方式

});

//这里是用jQuery异步获取数据的大致代码

$.get("请求的URL",function (data) {

var tpl = $("#charts").html();

laytpl(tpl).render(data,function (html) {

$("#test1").children('div').html(html);

//下面这步很重要

ins.reload({elem: '#test1'});//重置轮播图

});

});

});

至于为啥用

$("#test1").children('div').html(html);

因为

加idname会报错,所以没用下面这种方式填充html

$("#idname").html(html);

以上这篇解决layui轮播图有数据不显示的情况就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值