echarts自适应屏幕大小变化 方法:jq延迟执行 setTimeout()

延迟执行有时候可以解决很多问题,机器反应是需要时间的,有时候很多代码都解决不来的一个问题,延迟执行就可以完美的解决。以下是开发中遇到的例子。

1,canvas画布 echarts插件。我希望我绘制的画布随着屏幕的大小变化而变化,就是自适应。

  在解决之前查了网上很多人都说 将如下语句放在setOption下面即可。而事实上,这样是不够的。因为window的resize方法执行时,

这时候它还没有去获取到屏幕的大小变化,echart的resize方法却已经执行完成了。就会出现另一种状况。就是第一次屏幕变化图表没有变化,

接下来的每次变化图表都是反着变化的,屏幕变大图表变小,屏幕变小图表变大。

window.onresize = myChart.resize;

附上代码:
myChart.setOption({
           ......//自行配置内容
        });
window.onresize = function(){
    setTimeout("myChart.resize()",100);
}

百度中的那个方法是对的,就看自己怎么用了。所以学习中要学会融汇贯通,可能一个很简单的方法就可以解决问题。
一开始还想着要怎么在屏幕大小变化时获取宽度,再实时的去改变图表的大小。这样是很麻烦的。而延迟执行则非常简单的处理了这个问题,并且并不影响美感和观感。
还是要多学学基础知识。多学一点知识少些几行代码。思维要跳出定式。平时工作中多思考总结。
自勉。

原文地址:http://www.cnblogs.com/lal-fighting/p/6369421.html

posted @ 2017-02-06 10:38  liaoali  阅读(5687)  评论(0编辑  收藏  举报