静态页面下,echarts需要自适应页面稍微整理下有哪些需要注意的。
// 1.首先页面窗口发生变化时echarts 图会发生相应的变化。(这个能解决大多数情况下,echarts图会根据窗口变化问题。当tab隐藏内容有echartst图时要用到第2个里面的代码。),
$(window).resize(function () {
myChart.resize();
});
//2.Tab里的内容,因为要自适应,所以echarts外框标签的宽度不能取固定值,即使去width=“100%”也不行。因为直接将宽度写在标签内,页面在第一次渲染时,标签有display: none;的属性,echarts渲染不出或无法渲染出正常的页面。所以要在Tab标签切换时赋予它一个值,并且这个值不是固定值。
$(’.u-tabs li’).click(function(){
//1.先将Tab完成切换
var $this = $(this);
var _index = $this.index();
var $item = $this.closest(’.l-box’).siblings(’.u-items’).children(’.u-item’);
$this.addClass(‘is-active’)
.siblings().removeClass(‘is-active’);
$item.eq(_index).removeClass(‘is-none’)
.siblings().addClass(‘is-none’);
//2.为echarts图设置公共的类u-echarts 由此赋值给echarts标签可以达到响应式的样式
//找到echarts标签
var $echarts = $item.find('.u-echarts');
//Tab内有echarts图时才执行宽度赋值的操作。
if($echarts){
$echarts.resize().width(“100%”);
}
});