Bing 地图 v8 未加载 IE11
Bing maps v8 not loading for IE11
我正在执行非常标准的地图加载,例如:
map = new Microsoft.Maps.Map(document.getElementById('map_canvas'));
在Chrome中它工作正常,但在IE11中,我在地图代码中遇到异常:
0x800a01b6 - JavaScript 运行时错误:对象不支持 属性 或方法 'matchMedia'
Bing 地图代码中的行是:
return window.matchMedia("(-ms-high-contrast:active)").matches
window 变量已定义,但如果我检查它,则 matchMedia 未定义。
整个堆栈跟踪是:
Unhandled exception at line 1, column 9149 in https://www.bing.com/rms/MapCoreBundle/jc,nj/81a88ae6/9adb7eaf.js?bu=rms+answers+MapsSDK+AnonymousBegin*MapCore.en*MapCoreBegin*LabelOptions*LocalStorageCache*Gimme*GimmeWrapper*evPromise*ExternalPromise*StaticPromise*CookiesHelper*LruCache*Point*Rectangle*NAARectangle*ResourceManager*Units*Anchor*Size*Binding*ChangeMagnitude*EventBinding*Observable*ObservableObject*ObservableObjectChangedArgs*ObservableCollection*Debug*DelayLoadedObject*JSEvent*Dispatcher*WorkDispatcher*Iterator*ElementSizeHelper*GimmeExt*GimmeTransition*Helper*PerfState*ClientPerf*LoggingWrapper*LoggerConstants*Network*ThrottledEventInvoker*ObjectPool*StaticObjectPool*FixedSizeObjectPool*OrderedDictionary*PooledImage*Url*MapCoreMiddle*AltitudeReference*TransformCurve*GraphType*CurveKey*Curve*Color*CurveVector4*CurveColor*Vector4*CurveTangent*DiscreteRange*DiscreteRangeCollectionSpline*MapLayer*AutoScaling*PointLabelPlacementPreference*PolygonFillPreference*VerticalAlignment*CopyrightProvider*CopyrightProviderService*EntityState*MinZoomFraming*GeometryType*HitTestability*HorizontalAlignment*MapModeType*ViewChangeCause*MapFrameManager*LayerFrameManager*GoalCounter*FrameEventAggregator*DataMonitor*MapFrameData*LayerFrameData*Clipper*CompositePrimitiveSet*DataLoader*Differ*FixedPrimitiveSet*PrimitiveSubset*Overlay*OverlayAlignment*ImageryMapLayer*SimpleSceneContributor*VectorMapLayer*BasicMapAnimation*MapViewAnimator*BoundsAccumulator*CombinedLayerCollection*ConstrainViewArgs*LatLonCrs*LocationRect*Matrix2D*MapInstrumentationManager*Map*MapHelper*MapMath*MapLocation*MapType*MapTypeChangeArgs*MapTypeCollection*MapTypeId*MapView*MapEventForPrimitiveOverlay*MapQuadrant*PrimitiveOverlayHelper*OverlayBehavior*GeometryGeneralizer*SimplePointPrimitive*SimpleLinePrimitive*SimpleAreaPrimitive*MoveableSimplePointPrimitive*TargetViewChangeArgs*VectorMath*ViewChangeArgs*ZoomLevel*ZoomAroundLocationAnimator*ZoomEventArgs*OverviewMapMode*MapAuthentication*PublicApi*InternalApi*AnonymousEnd
0x800a01b6 - JavaScript runtime error: Object doesn't support property or method 'matchMedia'
感谢您的帮助!
Internet Explorer 11 should support matchMedia. Therefore, the most likely cause is that the document is being parsed in a non full standard mode。可能是因为您没有在 HTML 的顶部指定文档类型,例如:
<!DOCTYPE html>
作为最上面的 HTML 行。
另一种可能是您声明浏览器应使用兼容模式,例如使用 http-equiv="X-UA-Compatible"
元标记。如果存在此标记,请尝试将其删除。如果不存在,请尝试添加
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
确保 IE 正在使用它可以使用的最新模式。 Read more here.
我正在执行非常标准的地图加载,例如:
map = new Microsoft.Maps.Map(document.getElementById('map_canvas'));
在Chrome中它工作正常,但在IE11中,我在地图代码中遇到异常:
0x800a01b6 - JavaScript 运行时错误:对象不支持 属性 或方法 'matchMedia'
Bing 地图代码中的行是:
return window.matchMedia("(-ms-high-contrast:active)").matches
window 变量已定义,但如果我检查它,则 matchMedia 未定义。
整个堆栈跟踪是:
Unhandled exception at line 1, column 9149 in https://www.bing.com/rms/MapCoreBundle/jc,nj/81a88ae6/9adb7eaf.js?bu=rms+answers+MapsSDK+AnonymousBegin*MapCore.en*MapCoreBegin*LabelOptions*LocalStorageCache*Gimme*GimmeWrapper*evPromise*ExternalPromise*StaticPromise*CookiesHelper*LruCache*Point*Rectangle*NAARectangle*ResourceManager*Units*Anchor*Size*Binding*ChangeMagnitude*EventBinding*Observable*ObservableObject*ObservableObjectChangedArgs*ObservableCollection*Debug*DelayLoadedObject*JSEvent*Dispatcher*WorkDispatcher*Iterator*ElementSizeHelper*GimmeExt*GimmeTransition*Helper*PerfState*ClientPerf*LoggingWrapper*LoggerConstants*Network*ThrottledEventInvoker*ObjectPool*StaticObjectPool*FixedSizeObjectPool*OrderedDictionary*PooledImage*Url*MapCoreMiddle*AltitudeReference*TransformCurve*GraphType*CurveKey*Curve*Color*CurveVector4*CurveColor*Vector4*CurveTangent*DiscreteRange*DiscreteRangeCollectionSpline*MapLayer*AutoScaling*PointLabelPlacementPreference*PolygonFillPreference*VerticalAlignment*CopyrightProvider*CopyrightProviderService*EntityState*MinZoomFraming*GeometryType*HitTestability*HorizontalAlignment*MapModeType*ViewChangeCause*MapFrameManager*LayerFrameManager*GoalCounter*FrameEventAggregator*DataMonitor*MapFrameData*LayerFrameData*Clipper*CompositePrimitiveSet*DataLoader*Differ*FixedPrimitiveSet*PrimitiveSubset*Overlay*OverlayAlignment*ImageryMapLayer*SimpleSceneContributor*VectorMapLayer*BasicMapAnimation*MapViewAnimator*BoundsAccumulator*CombinedLayerCollection*ConstrainViewArgs*LatLonCrs*LocationRect*Matrix2D*MapInstrumentationManager*Map*MapHelper*MapMath*MapLocation*MapType*MapTypeChangeArgs*MapTypeCollection*MapTypeId*MapView*MapEventForPrimitiveOverlay*MapQuadrant*PrimitiveOverlayHelper*OverlayBehavior*GeometryGeneralizer*SimplePointPrimitive*SimpleLinePrimitive*SimpleAreaPrimitive*MoveableSimplePointPrimitive*TargetViewChangeArgs*VectorMath*ViewChangeArgs*ZoomLevel*ZoomAroundLocationAnimator*ZoomEventArgs*OverviewMapMode*MapAuthentication*PublicApi*InternalApi*AnonymousEnd
0x800a01b6 - JavaScript runtime error: Object doesn't support property or method 'matchMedia'
感谢您的帮助!
Internet Explorer 11 should support matchMedia. Therefore, the most likely cause is that the document is being parsed in a non full standard mode。可能是因为您没有在 HTML 的顶部指定文档类型,例如:
<!DOCTYPE html>
作为最上面的 HTML 行。
另一种可能是您声明浏览器应使用兼容模式,例如使用 http-equiv="X-UA-Compatible"
元标记。如果存在此标记,请尝试将其删除。如果不存在,请尝试添加
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
确保 IE 正在使用它可以使用的最新模式。 Read more here.