Javascript Internet Explorer中的传单.js性能不佳

Javascript Internet Explorer中的传单.js性能不佳,javascript,leaflet,mapbox,Javascript,Leaflet,Mapbox,我正在尝试使用mapbox和传单.js构建一个基于地图的web应用程序 我正在将大约300个标记从geoJSON文件加载到featureLayer中。这似乎在每个浏览器中都能很好地工作,除了internet explorer,它在每次使用featureLayer.setFilter加载或过滤标记时都会冻结10秒左右。我上传了一个演示 锁定IE性能分析的罪魁祸首似乎是“addDoubleTapListener”。这似乎是一个已知问题(),解决方案建议回滚到手册0.7.5,或使用0.7.7.1分支(

我正在尝试使用mapbox和传单.js构建一个基于地图的web应用程序

我正在将大约300个标记从geoJSON文件加载到featureLayer中。这似乎在每个浏览器中都能很好地工作,除了internet explorer,它在每次使用featureLayer.setFilter加载或过滤标记时都会冻结10秒左右。我上传了一个演示

锁定IE性能分析的罪魁祸首似乎是“addDoubleTapListener”。这似乎是一个已知问题(),解决方案建议回滚到手册0.7.5,或使用0.7.7.1分支(该分支具有恢复触摸检测的修复程序)。我两个都试过了,但两个都没有对这个问题产生任何影响。还建议升级到传单1.0.0-beta版,但这似乎与当前的地图盒不兼容


如果您能帮我解决这个问题,我们将不胜感激。

好的,我找到的解决方案是删除传单-src.js 0.7.7.1中的以下行:

if (L.Browser.touch && (type === 'dblclick') && this.addDoubleTapListener) {
    this.addDoubleTapListener(obj, handler, id);
}

IE现在以闪电般的速度加载标记,所有功能似乎仍在我尝试的所有设备中工作。这不是一个理想的解决方案,但在Mapbox支持传单1.0.0之前,它将作为权宜之计。

我在IE(9+)中加载了几千个标记,但没有注意到这个问题,但我实际上没有使用
设置过滤器。我通常通过AJAX逐步地分块添加标记。如果您不是通过
geoJsonLayer.addData()
一次添加功能块,而是通过
geoJsonLayer.addData()
一次添加功能块,那么会有任何改进吗?另外,你能不能修改一下你的示例代码,这样我们就可以测试和分析了?我在Edge中也遇到了同样的性能问题。很有趣。。虽然我在iOS和android设备上使用传单,但我还没有在windows touch设备上进行测试。双击到底是做什么的?放大?没用。你在什么硬件上测试IE,它支持触摸吗?也许这就是我没有看到它的原因,如果我能获得一个windows touch devicePerfect解决方案,我将稍后再试!