当你有地图区域数据的需求,你可能会用到jvectormap。
jvectormap有以下特点:
1.兼容主流浏览器(包括稀烂的IE6-8);
2.最终地图为SVG生成的矢量图,清晰度完全没问题;
3.提供大量的世界各种地图数据;
4.支持自定义地图;
当你触发iphone或ipad上面的jvectormap点击事件时候,你会发现你得需要点击两次才能触发该事件;比如你第一次点击上海区域时候,上海区域只是加上背景颜色,但没有触发onRegtionClick事件,这是因为没有过滤默认的onRegtionOver事件,第一次点击只是触发onRegtionOver事件,第二次点击才能触发onRegtionClick事件;
解决办法:
//判断浏览器设备 var ua = navigator.userAgent.toLowerCase(); ua = ua.match(/iPad|iPhone/i); //ua等于空则是PC端上的浏览器,可以试试打印ua的值 //在jvectormap主函数参数里面加上 onRegionOver: function(event, code){ if (ua!=null) { event.preventDefault(); } }, onLabelShow: function(event, label, code){ if (ua!=null) { event.preventDefault(); } },
转载自:http://www.web-er.net/jvectormap%E5%9C%A8iphoneipad%E7%AD%89%E8%A7%A6%E6%91%B8%E5%B1%8F%E7%BB%88%E7%AB%AF%E7%9A%84%E4%BD%BF%E7%94%A8%E6%8A%80%E5%B7%A7/