tab标签页切换时Echarts加载不正常的问题

本文档描述了一个关于Echarts图表在选项卡切换后,再改变浏览器窗口大小导致渲染失败的问题。解决方案是通过监听选项卡切换事件,并在切换到图表选项卡时调用Echarts的resize()方法,确保图表适应新的窗口大小。此外,提供了具体的JavaScript代码示例以供参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

切换tab选项卡时Echarts加载不正常的问题

一、问题描述

我有两个选项卡,一个用来显示Echarts图表,一个用来显示Echarts图表的数据源
在这里插入图片描述
但是我切换到数据源的选项卡后再改变浏览器窗口大小时,这是再切换回echarts图表的选项卡就会出现:
在这里插入图片描述

可以看到,图形渲染失败了

二、解决方案:

	var charts=[];
    var injectionWaterChart=echarts.init(document.getElementById('echarts_InjectionWater'));
    var pressChart=echarts.init(document.getElementById('echarts_Press'));
    var createDaysChart=echarts.init(document.getElementById('echarts_CreateDays'));
    charts.push(injectionWaterChart);
    charts.push(pressChart);
    charts.push(createDaysChart);
    //解决tab切换后改变窗口大小时不显示问题 在加载窗口后重新渲染。
    $('a[data-toggle="tab"]').on('shown.bs.tab', function(e) {
        var activeTab = $(e.target)[ 0 ].hash;
        if (activeTab=='#tab-1'){
            for(var i=0;i<charts.length;i++){
                charts[i].resize(); //适应div大小
            }
        }
    });   //data-toggle="pill还是data-toggle="tab" 根据前面所用标签页的不同来选择

就是再次切换回图表选项卡的时候,调用restore()方法,将图表数据还原即可,那个tab-1是我图表选项卡中tab标签的id。

三、拓展

在这里插入图片描述
参考链接:https://www.runoob.com/bootstrap/bootstrap-tab-plugin.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

别团等shy哥发育

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值