由于公司对于大数据展示的需求,我只能学习了百度的Echarts,在去年的这个时候,刚刚接触Echarts由于不是很明白,还花了一点钱买了当时页面链接的视频教程。买完发现视频和官方文档描述的一样,这我就很尴尬了,看了两集,感觉这钱白花了,直接上手撸项目。。。
在我用Echarts的时候,天还是那么蓝,我还是那么帅(哈哈,很皮),言归正传,当时版本还是2.0版本横行的时代,上手是2.0上的手,用的是模块化加载的方式,后来在逐渐的用到了 3.0版本,再后来慢慢的4.0,由于在一步步的进步中,页面不在满足于一个页面只放一个页面,客户奇需求也越来越让我上头,客户需求如下:
不要左侧树,在页面上边方tab,我们要tab切换。接到需求后,我以为很简单,用BootStrap做了tab切换功能,之后将图表页面做到了每一个tab页内,制作修改过程很顺利,作完刷新很完美;点击tab切换,瞬间蒙了,我的图表怎么了,打开浏览器的F12调试功能,发现我的宽高呢???
思前想后,上网找了一些文档,查了一下类似事件,发现了宽高丢失的原因:由于除了首页之外的tab页都未加载,但是图表已经加载了,由于tab页未加载,所以宽高就发生了问题。
通过我的一系列百度和尝试,总结出方法如下:
1 在除首页之外的其他tab页面的图表加载的js代码前,给图表添加相应的宽和高;
2 在tab页制作的时候,将tab页结构改变,只应用其上册tab样式,将tab内容代码块去掉,添加iframe标签,src属性默认第一个tab页的路径,在给每一个tab标签绑定点击事件,点击切换src,达到每次都载入页面的目的,从而解决问题;(不过需要走后台哦;还有记得将路径放到tab标签的属性里,要不路径没法弄哦)