关于移动端使用echarts点击图标外部不能关闭tooltip的问题
新建一个mixin文件 粘贴如下代码:
1 /**
2 * 1. 需要将echart实例赋值为 this.echartsInstance `echartsInstance` echarts 带s
3 * 2. echarts所在的组件大小应该跟echarts图表实际大小相差不多
4 * 3. 引入即可,无需编写其他代码
5 */
6 export const mixinAutoHideTooltip = {
7 mounted() {
8 this.mAutoHideTooltip(this.$el);
9 },
10 data() {
11 this.mIsSelfTouch = false;
12 return {};
13 },
14 beforeDestroy() {
15 this.mRemoveListeners(this.$el);
16 },
17 methods: {
18 mAutoHideTooltip(dom) {
19 dom.addEventListener('touchstart', this.mHandleContainerTouchStart);
20 dom.addEventListener('touchend', this.mHandleContainerTouchEnd);
21 document.addEventListener('touchstart', this.mHandleDomcumentTouchStart);
22 },
23 mRemoveListeners(dom) {
24 dom.removeEventListener('touchstart', this.mHandleContainerTouchStart);
25 dom.removeEventListener('touchend', this.mHandleContainerTouchEnd);
26 document.removeEventListener('touchstart', this.mHandleDomcumentTouchStart);
27 },
28 mHandleContainerTouchStart() {
29 this.mIsSelfTouch = true;
30 },
31 mHandleContainerTouchEnd() {
32 this.mIsSelfTouch = false;
33 },
34 mHandleDomcumentTouchStart() {
35 if (this.mIsSelfTouch) return;
36 this.echartsInstance && this.mHideTooltip(this.echartsInstance);
37 },
38 mHideTooltip(echartsInstance) {
39 echartsInstance.dispatchAction({
40 type: 'updateAxisPointer',
41 currTrigger: 'mousemove',
42 x: 0,
43 y: 0
44 });
45 }
46 }
47 };
使用时如下:

关于移动端使用echarts点击图标外部不能关闭tooltip的问题的更多相关文章
- Swift - 点击输入框外部屏幕关闭虚拟键盘
我们如果把文本框的Return Key设置成Done,然后在storyboard中将文本框的Did End On Exit事件在代码里进行关联.同时关联代码里调用文本框的resignFirstResp ...
- 移动端a标签点击图片有阴影处理
移动端我们在点击页面中的一些图片的时候会出现阴影.处理方法只要给a标签加上 a { -webkit-tap-highlight-color: transparent; -webkit-touch-ca ...
- 移动端300ms的点击延迟以及解决方案
[今天做在移动端的一些效果时,我选择使用动画而不是用过渡,这个300ms的点击延迟是我为什么使用动画而不使用过渡最主要的一个原因] 动画和过渡 共同点:都是css控制DOM运动, 不同点: 1.过渡: ...
- Ubuntu下增加eclipse菜单图标并配置java path(解决点击图标不能启动eclipse的问题)
Ubuntu下增加eclipse菜单图标 Ubuntu的菜单图标在/usr/share/applications目录下. 1. 在/usr/share/applications目录下新建eclipse ...
- jQuery实现点击图标div循环放大缩小功能
很基础的一个功能,点击左下角的图标按钮,地图的整个div会变大,变大预览之后,再次点击图标按钮,地图的整个div会变小,恢复原样,两个图标在地图界面的放大和缩小时间不断的切换图标状态(箭头向里面,或者 ...
- vue实现点击图标,图标在2s中完成旋转
<!-- 点击 vue实现点击图标,图标在2s中完成旋转 1==>如何让它在2s内完成旋转 使用动画 transform: rotate(-180deg); 动画的运动状态 transit ...
- 移动端触摸、点击事件优化(fastclick源码学习)
移动端触摸.点击事件优化(fastclick源码学习) 最近在做一些微信移动端的页面,在此记录关于移动端触摸和点击事件的学习优化过程,主要内容围绕fastclick展开.fastclick githu ...
- echarts点击柱状图时触发点击事件
项目需求:1.通过echarts把数据展示为柱状图2.点击对应的柱状图 显示对应的弹窗 主要用到的时 echarts中的 "click" 事件, 使用demo: var myCha ...
- ECharts 点击事件
一个问题 ECharts 点击出现多个弹窗
- Echarts点击多组数据多个柱子中的一个柱子,获取当前点击的是第几组数据,并获取点击的是当前组别第几根柱子,以及对应横坐标,
遇到一需求,一般都是点击图后获取其中一组数据就可以了,不需要详细到获取点击了当前X轴对应的其中的哪个, 今天的需求是 Echarts点击多组数据多个柱子中的一个柱子,获取当前点击的是第几组数据,并获取 ...
随机推荐
- VsCode搭建一个React项目
安装Node.js 使用 npm -v检查安装成功 目前的 node 中都会自带 npm 所以不需要重新下载 直接切换至淘宝镜像即可 1.临时使用 :npm --registry https://re ...
- Multipass,本地轻量级Linux体验!
Multipass介绍 Multipass 是由Ubuntu官方提供,在Linux,MacOS和Windows上快速生成 Ubuntu虚拟机 的工具.它提供了一个简单但功能强大的CLI,可让我们在本地 ...
- win7修改开机动画
开机动画的修改 首先win7的过场动画是存在于C:\Windows\System32\bootres.dll ,而修改过程动画就需要修改这个dll,我不会改,所以只能用工具美化大师,软媒魔方里面的一个 ...
- cv2.imread opencv读取不到图片问题
解决办法 cv2.imread 路径中包含中文,改为英文 其他 这个问题解决了很久,都属于库的问题
- easyui textbox setvalue 和 settext前后之别
今天在这里转了好久,浪费了不少时间.话不多说直接上干货: 1.text与value设置不同的值一定要先赋值 value后赋值text, 否则全为value值 2.若只setValue,则getValu ...
- 基于Nginx搭建WebDAV服务
title: 基于Nginx搭建WebDAV服务 categories: - [IT,网络,服务] tags: - WebDAV - Nginx comments: true date: 2022-1 ...
- JavaScript:函数:函数传参传的是什么?值传递还是引用传递?
我们调用函数的时候,把实参放入到括号里进行传参,让形参接收实参的数据. 在这个过程中,形参接收的数据到底是什么,换句话说,我们传参传的到底是什么东西? 初学JS的,可能不太难理解这个问题的意义是什么? ...
- electron中使用adm-zip将多个excel文件压缩进文件夹,使用XLSX以及XLSXStyle生成带样式excel文件
需求:electron环境下想要实现根据多个表生成多个Excel文件,打包存入文件夹内并压缩下载到本地.(实际场景描述:界面中有软件工程一班学生信息.软件工程二班学生信息.软件工程三班学生信息,上方有 ...
- [编程基础] Python装饰器入门总结
Python装饰器教程展示了如何在Python中使用装饰器基本功能. 文章目录 1 使用教程 1.1 Python装饰器简单示例 1.2 带@符号的Python装饰器 1.3 用参数修饰函数 1.4 ...
- Spark详解(05-1) - SparkCore实战案例
Spark详解(05-1) - SparkCore实战案例 数据准备 1)数据格式 本项目的数据是采集电商网站的用户行为数据,主要包含用户的4种行为:搜索.点击.下单和支付. (1)数据采用_分割字段 ...