hightcharts在移动端运用 FastClick后苹果上legend点击失效的解决办法

问题:在移动端作图表运用了hightcharts,引用了fastclick来消除300ms的延迟,可是发现苹果(安卓正常)上hightcharts的legend点击不起做用了,必须长按才行。git

使用fastclick库,其实现思路是,取消 click 事件(参看源码 164-173 行),用 touchend 模拟快速点击行为(参看源码 521-610 行)。github

在源码521-610行里能够看到fastclick对一些特殊的标签作了处理,这里咱们也对hightcharts生成的一些标签作处理,在此函数里添加如下判断函数

if(targetTagName === 'g' || targetTagName === 'path' || targetTagName === 'text'  || targetTagName === 'tspan'  ){
   return false;
}

完美解决。学习

 

(此问题以前没有遇到过也不知道是否是没注意,我特地用了纯净的hightcharts代码作了实验,可是仍是有问题,特在此记录一下,若是有同窗遇到能够交流学习,若有不正确的能够指出,我在修改。)spa

相关文章
相关标签/搜索