我对SWF
, 运行Windows 7 Adobe AIR runtime
并Google Maps Javascript V3
嵌入到超级基本html
页面中变得超级疯狂。
SWF
只需加载后者并html
显示地图。
经典导航2d map
完美无缺,但是当street view
模式启动时,会air
产生大量 javascript 错误。任何浏览器加载的相同html
,都可以完美运行。
我创建了一个超级简单SWF
的概念证明。这是超级最小的mxml
源代码:
<mx:WindowedApplication
xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="init();"
>
<mx:UIComponent
id="bxMap"
width="100%" height="100%"
/>
<mx:Script>
<![CDATA[
private var _browser:HTMLLoader;
private var _sprite:Sprite;
private function init():void {
_browser = new HTMLLoader();
_browser.width = bxMap.width;
_browser.height = bxMap.height;
_sprite = new Sprite();
_browser.addEventListener(Event.COMPLETE, map_Ready);
_browser.load(new URLRequest("https://google-developers.appspot.com/maps/documentation/javascript/examples/full/map-simple?hl=it"));
}
private function map_Ready(event:Event):void {
_sprite.addChild(_browser);
bxMap.addChild(_sprite);
}
]]>
</mx:Script>
</mx:WindowedApplication>
如您所见,该 html 取自 google 示例,因此它不应包含任何奇怪的东西...无论如何,我也尝试了由我编写的超最小 html,并且出现了同样的问题。
这是 AIR 控制台捕获的典型 javascript 错误。只需在街景中移动鼠标即可生成数百个这样的错误:
TypeError: Result of expression 'a' [undefined] is not an object.
Hu at : 2
at : 9
ag at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 25
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 24
lC at : 13
at : 10
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 9
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 19
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 21
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 19
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 21
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 19
Fr at : 73
at : 72
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 20
关于为什么会发生这种情况以及如何摆脱它的任何想法?
我试图将此行为通知谷歌(在https://code.google.com/p/gmaps-api-issues/),但几分钟后有人删除了我的问题。没有人告诉我为什么我的问题必须被删除。