解决Echarts使用tab切换时只显示第一个tab中图表,其他tab中图表不显示或显示不全问题

近期项目中也使用到了Echarts来画图表,也是两个tab切换页面中都存在图表,页面加载完成后都对所有图表进行了初始化和绘制,然而在tab切换中出现了如下动图中的问题:




图中可以看到,第一个tab显示是很正常的,但是第二个tab中内容显示不完整。


我的解决方式如下:

1--在tab导航中加入radio单选按钮并隐藏,当第二个tab被选中的时候,再初始化图表数据,导航代码如下:

<ul class="tab-nav-list clearfix">

	<li class="active">
		<label><span>数据分析</span>
			<input class="tabToggle hide" type="radio" name="tabToggle" value="0"/></label>
	</li>
	<li>
		<label><span>用户分析</span>
			<input class="tabToggle hide" type="radio" name="tabToggle" value="1" /></label>
	</li>
	<li><span>页面分析</span></li>
</ul>
2--设置被选中监听函数,在第二个tab被选中时初始化图表:

	initDataAnalyze();//第一个tab图表初始化
	$(".tabToggle").click(function () {
		if ($(this).val() == 1) {
			
			initUserAnalyze();//第二个tab图表初始化
		}
	});

经过以上两个步骤后得以正常显示,当然,再多个tab中也可以使用这种方式。

效果如下:




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值