解决layui轮播图有数据不显示的情况


Posted in Javascript onSeptember 16, 2019

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

解决layui轮播图有数据不显示的情况

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

先贴上HTML代码:

<div class="layui-carousel" id="test1" lay-filter="test1">
 <div carousel-item="">
  <script id="charts" type="text/html">
    这里是动态遍历的代码
  </script>
 </div>
</div>

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

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);

因为<div carousel-item="">加idname会报错,所以没用下面这种方式填充html

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

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

Javascript 相关文章推荐
Javascript 继承实现例子
Aug 12 Javascript
jMessageBox 基于jQuery的窗口插件
Dec 09 Javascript
jQuery之ajax删除详解
Feb 27 Javascript
jquery实现select选中行、列合计示例
Apr 25 Javascript
jquery判断元素是否隐藏的多种方法
May 06 Javascript
早该知道的7个JavaScript技巧
Jun 21 Javascript
聊一聊jQuery插件uploadify使用方法
Aug 24 Javascript
浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
Feb 21 Javascript
vue实现的仿淘宝购物车功能详解
Jan 27 Javascript
浅析JS中NEW的实现原理及重写
Feb 20 Javascript
JavaScript语句错误throw、try及catch实例解析
Aug 18 Javascript
Vue 使用typescript如何优雅的调用swagger API
Sep 01 Javascript
基于layui轮播图满屏是高度自适应的解决方法
Sep 16 #Javascript
关于Layui Table隐藏列问题
Sep 16 #Javascript
Layer.js实现表格溢出内容省略号显示,悬停显示全部的方法
Sep 16 #Javascript
JavaScript生成一个不重复的ID的方法示例
Sep 16 #Javascript
解决微信小程序中的滚动穿透问题
Sep 16 #Javascript
微信小程序左滑删除实现代码实例
Sep 16 #Javascript
微信小程序左右滚动公告栏效果代码实例
Sep 16 #Javascript
You might like
PHP下几种删除目录的方法总结
2007/08/19 PHP
批量获取memcache值并按key的顺序返回的实现代码
2011/06/14 PHP
如何实现iframe(嵌入式帧)的自适应高度
2006/07/26 Javascript
javascript hasFocus使用实例
2010/06/29 Javascript
一些主流JS框架中DOMReady事件的实现小结
2011/02/12 Javascript
SharePoint 客户端对象模型 (一) ECMA Script
2011/05/22 Javascript
用Juery网页选项卡实现代码
2011/06/13 Javascript
JavaScript中的作用域链和闭包
2012/06/30 Javascript
jQuery选择器源码解读(三):tokenize方法
2015/03/31 Javascript
Angularjs为ng-click事件传递参数
2017/06/15 Javascript
深入理解React Native原生模块与JS模块通信的几种方式
2017/07/24 Javascript
JS如何设置元素样式的方法示例
2017/08/28 Javascript
js中this的指向问题归纳总结
2018/11/28 Javascript
Vue 实现前端权限控制的示例代码
2019/07/09 Javascript
angular *Ngif else用法详解
2020/12/15 Javascript
梳理一下vue中的生命周期
2020/12/30 Vue.js
web.py中调用文件夹内模板的方法
2014/08/26 Python
用Python编写一个简单的FUSE文件系统的教程
2015/04/02 Python
Django基础知识与基本应用入门教程
2018/07/20 Python
Python的互斥锁与信号量详解
2019/09/12 Python
Python多线程Threading、子线程与守护线程实例详解
2020/03/24 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
2020/12/04 Python
python 基于opencv实现图像增强
2020/12/23 Python
Python对excel的基本操作方法
2021/02/18 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
Html5页面内使用JSON动画的实现
2019/01/29 HTML / CSS
amazeui模态框弹出后立马消失并刷新页面
2020/08/19 HTML / CSS
汉森冲浪板:Hansen Surfboards
2018/05/19 全球购物
全球最大运动品牌的男装、女装和童装官方库存商:A&A Sports
2021/01/17 全球购物
2014年党务公开实施方案
2014/02/27 职场文书
公司总经理岗位职责
2015/04/01 职场文书
2015年乡镇财政工作总结
2015/05/19 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书
SpringBoot连接MySQL获取数据写后端接口的操作方法
2021/11/02 MySQL
日元符号 ¥
2022/02/17 杂记