internet-explorer - 谷歌地图 v3 与 IE ... SCRIPT5022

标签 internet-explorer google-maps google-maps-api-3

就像主题中的那样:我的实现在 FF、Chrome、Opera...IE 中的任何地方都有效:SCRIPT5022

我正在通过回调初始化 Google map ,因为我遇到了 google.maps.MapTypeID 未定义的问题。

<script src="http://maps.google.com/maps/api/js?sensor=false&language=pl&callback=gmapInit" type="text/javascript"><\/script> 

和gmapInit:

  this.map = new google.maps.Map(print_it.doc.getElementById('location-map'), {
     center                     : new google.maps.LatLng(51.917168,19.138184),
     zoom                       : 6,
     minZoom                    : 6,
     maxZoom                    : 16,
     mapTypeId                  : google.maps.MapTypeId.HYBRID,
     scrollwheel                : false,
     disableDefaultUI           : true,
     navigationControl          : true,
     navigationControlOptions   : {
           style: google.maps.NavigationControlStyle.SMALL
     }
  });

print_it.doc 是对新窗口中文档的引用 IE 失败 this.map = new google.maps.Map(..... );

请帮忙!

最佳答案

这是一个范围问题。

在 IE 中,无法在文档之间移动节点。

那么当您从 opener 初始化 map 时会发生什么:

  1. API 将访问新窗口内的 target-div(没问题 到目前为止)
  2. API 将创建大量元素来构建 map (API 将在当前文档的范围内执行此操作,而不是在新窗口内,问题就开始了)
  3. API 需要将创建的元素放入 map ,但在 IE 中这会失败,因为这些元素是在不同的文档(打开器内)中创建的,必须移动到新窗口。

你可以做什么: 还要在新窗口中包含 map API,并在新窗口中使用 google-object 来进行与新窗口中的 map 相关的所有调用:

示例:

(假设 print_it 是一个窗口对象,并且您在新窗口中包含了 map API)

this.map = new print_it.google.maps.Map(print_it.doc.getElementById('location-map'), {
     center                     : new print_it.google.maps.LatLng(51.917168,19.138184),
     zoom                       : 6,
     minZoom                    : 6,
     maxZoom                    : 16,
     mapTypeId                  : print_it.google.maps.MapTypeId.HYBRID,
     scrollwheel                : false,
     disableDefaultUI           : true,
     navigationControl          : true,
     navigationControlOptions   : {
           style: print_it.google.maps.NavigationControlStyle.SMALL
     }
  });

关于internet-explorer - 谷歌地图 v3 与 IE ... SCRIPT5022,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9702574/

相关文章:

html - 文本不会仅在 IE 上显示

javascript - 带有 BlendColor 过滤器的 IE 上的透明度问题

javascript - 你如何构造类似于给定示例的 JavaScript 数组?

javascript - Google Maps API v3 + Foundation 4 Reveal 模式无法正确显示

javascript - 如何将地点列表与 Google map 点连接

google-maps - 谷歌地图缩放后的方向

internet-explorer - 使用 Chrome Frame 时打开 IE 的 iframe

java - 如何使用 Selenium WebDriver 和 Java 选择单选按钮?

android - 当从地址中找到经纬度时,如何给出地址?

java - 有没有办法检查位置(经度、纬度)是否在预定义的多边形内?