问题:在移动端作图表运用了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