javascript - IE7/8 javascript "SCRIPT5007: Unable to get value of the property"

标签 javascript google-maps-api-3 internet-explorer-8 internet-explorer-7

我有一个网站正在开发中,它使用 Google Maps API V3 来加载多个位置标记。一切正常,除了在 IE7/8 中,由于以下错误,我在数组中循环失败:

SCRIPT5007: Unable to get value of the property '5': object is null or undefined

我查看了 StackOverflow 上所有类似的问题,但找不到任何解决方案。

所以我试图从一个对象数组访问数据(我也尝试了一个嵌套数组,但出现了同样的错误)。我的数组如下。我也曾尝试删除 html 对象以防出现问题,但没有任何变化 - IE7/8 仍然无法获取对象值。

var sites = [
    {title: "Hermitage Medical Clinic", latitude: 53.3593139774, longitude: -6.40494071541, enumerator: 1, html: "<div class=\"find_a_surgeon_info_inner\"><h4 style=\"margin: 0; padding: 0;\">Hermitage Medical Clinic</h4><p>Old Lucan Road, Dublin 20</p><p><a href=\"http://devel.pixelapes.com/iaps.ie/location/hermitage-medical-clinic/\">View hospital details</a></p></div>", iconTerm: "hospital" }
        ];

这是我尝试访问数据的函数:

        function setMarkers(map, sites) {

            for (var i = 0; i < sites.length; i++) {
                // var sites = markers[i];
                var icon = '<?php bloginfo("template_url"); ?>/images/map-icons/' + sites[i].iconTerm + '.png';
                var siteLatLng = new google.maps.LatLng(sites[i].latitude, sites[i].longitude);
                var marker = new google.maps.Marker({
                    position: siteLatLng,
                    map: map,
                    icon: icon,
                    title: sites[i].title,
                    zIndex: sites[i].enumerator,
                    html: sites[i].html
                });

                var contentString = "Some content";

                google.maps.event.addListener(marker, "click", function () {
                    infowindow.setContent(this.html);
                    infowindow.open(map, this);
                });
            }
        }

我也尝试过仅使用默认 map 标记,以防 iconTerm 对象出现特定问题,但 IE7/8 无法尝试获取下一个对象值。

这是发生这种情况的页面: http://devel.pixelapes.com/iaps.ie/surgeon/eamon-s-beausang/

奇怪的是,我有另一个 map 实例,其中我没有使用 map.fitBounds 设置边界。获取对象值的失败仍然发生,但 map 加载类型(但非常困惑):http://devel.pixelapes.com/iaps.ie/find-a-hospital-or-clinic/

我已尝试删除单个外科医生页面上的 fitBounds 功能,但 map 仍然无法像在“查找医院”​​ map 上那样部分加载。

关于如何解决这个问题有什么想法吗?

最佳答案

siteslatlngs 的最后一项后面有尾随逗号,删除它们,IE 不喜欢数组/对象中的尾随逗号。

关于javascript - IE7/8 javascript "SCRIPT5007: Unable to get value of the property",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10430460/

相关文章:

javascript - 我想要 Ember.Handlebars.helper 内部的 Handlebar {{#if}} 逻辑

javascript - 如何使用 react-select 和 react-bootstrap 来获取值

ios - 来自 google api 的所有国家和美国各州

javascript - onResize() 重新加载我的网页,导致 onResize() 在加载时再次被调用

javascript - IE8 Jquery 1.8.3 问题 : Syntax error line 2 chart 13575

css - 工具提示 CSS 仅 : focus and hover prevents access to following button

javascript - 如何将一个集合字段合并到另一个集合字段而不重复

javascript - 有没有使用 CSS/JS 显示损坏的图像(链接)图标?

google-maps - 谷歌地图,点击链接后打开信息窗口

google-maps - 如何检索显示城市或自治市边界的静态 map