当前位置: 首页 > article >正文

Echarts实现图表自适应屏幕分辨率

一:简介

之前做项目的时候要实现echarts图表随浏览器窗口大小变化而改变,echarts本身提供了一个resize()方法,然后我们需要用一个函数实现浏览器窗口监听,最初我选用的是window.onresize方法,当页面只有一个图表时可以实现,但当页面多个图表时window.onresize会被覆盖从而导致失效,最后我选用了window.addEventListener()方法解决了这个问题

二:window.onresize存在的问题

这是因为onresize本身就是一个回调,当发生改变时,前一个方法就会被覆盖

三:window.addEventListener()的运用

EventTarget.addEventListener() 方法将指定的监听器注册到 EventTarget 上,当该对象触发指定的事件时,指定的回调函数就会被执行。事件目标可以是一个文档上的元素 Element、Document 和 Window,也可以是任何支持事件的对象(比如 XMLHttpRequest)

语法:

addEventListener(event, function, useCapture)

  • 参数event必填,表示监听的事件,例如 click, resize等,不加前缀on的事件。
  • 参数 function必填,表示事件触发后调用的函数,可以是外部定义函数,也可以是匿名函数。不带参数。
  • 参数 useCapture选填,填true或者false,用于描述事件是冒泡还是捕获触发,true表示捕获,默认false表示冒泡。
     

代码实现:

window.addEventListener('resize', this.screenAdapter)

screenAdapter(){
    this.chartInstance.resize()
}

其中,screenAdapter即为resize事件触发后调用的函数。同时不要忘记使用window.removeEventListener来移除监听


http://www.kler.cn/a/3599.html

相关文章:

  • 第7章:Python TDD测试Franc对象乘法功能
  • STM32学习9---EXIT外部中断(理论)
  • 汽车钥匙发展史
  • 使用 Tauri 开发桌面应用程序:新一代的轻量解决方案
  • P8738 [蓝桥杯 2020 国 C] 天干地支
  • 【游戏设计原理】75 - 最小最大化
  • docker安装Redis高可用(一主二从三哨兵)
  • MP4怎么转换成MP3格式?两种方法帮你实现
  • 搭建一个双系统个人服务器
  • 水果新鲜程度检测系统(UI界面+YOLOv5+训练数据集)
  • dfs和bfs能解决的问题
  • 给准备面试网络工程师岗位的应届生一些建议
  • CeresPCL 曲线拟合
  • 【LeetCode刷题-Python】移除元素
  • QT表格控件实例(Table Widget 、Table View)
  • Cookie 和 Session的区别
  • Python接口自动化 ❀ 详解 Cookie-Session登录验证 的工作原理
  • 机器学习:基于KNN对葡萄酒质量进行分类
  • 【SpringAOP】AOP面向切面编程
  • 微信小程序面试题(day08)
  • OpenHarmony实战STM32MP157开发板 “控制” Hi3861开发板 -- 中篇
  • 【2023年第十一届泰迪杯数据挖掘挑战赛】B题:产品订单的数据分析与需求预测 建模及python代码详解 问题一
  • Java中的深拷贝和浅拷贝
  • 1.4、第三阶段 MySQL数据库
  • 记一次若依后台管理系统渗透
  • 010-Ansible数组