bootstrap+echarts实现轮播效果 第二屏显示有错

1 篇文章 0 订阅
1 篇文章 0 订阅

阿桂我在写一个看板时,遇到这样的一个需求,使用echart和bootstrap的轮播效果展现多个图表,一屏放两个,第二屏放两个;...........................

但问题来了,轮播到第二屏显示就不全了,我试着把第一屏的active去掉,并改到第二屏中,而第二屏的2个此时是正常的,第一屏的2个出现了显示不全

并且报出     Can't get dom width or height   异常

-------------------------------------------------------华丽丽的分割线-----------------------------------------------

究其原因是,active样式会中的display属性问题,当没有active样式时 display为none,
故该层的长宽没有被初始化,而echart在页面加载完时就开始创建图表,此时轮播的第一屏被激活(active),故正常显示,第二屏没有active,div的长宽没有被初始化,故显示不了;
-------------------------------------------------------华丽丽的分割线-----------------------------------------------

解决方案:
思路:当轮播到第二屏时,即第二屏被active才初始化echart的图,故给轮播的导航按钮即(carousel-control)加个按钮监听器,当被点击时,才触发echart渲染

-------------------------------------------------------华丽丽的分割线(代码如下)-----------------------------------------------

$(function(){
    setInterval(function(){
    	$('#right').click();
    	createChart('chart1',option);
    },5000);
})
由于我的需求是自动轮播,所以写了个定时器,当 轮播的导航按钮(right层)被点击后才调用渲染echart(createChart函数);

createChart()封装了echart的图层渲染,具体见echart的demo;


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值