Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript google maps v3标记未显示ie 8和9_Javascript_Internet Explorer_Google Maps Api 3 - Fatal编程技术网

Javascript google maps v3标记未显示ie 8和9

Javascript google maps v3标记未显示ie 8和9,javascript,internet-explorer,google-maps-api-3,Javascript,Internet Explorer,Google Maps Api 3,我试图让谷歌地图标记出现在IE8和IE9中。我认为问题出在这里: var addresses = mapAddresses; //alert(addresses); if (addresses != null) { var marker, x; var infowindow = new google.maps.InfoWindow(); for (x = 0; x < addresses.length; x++) { //alert(address

我试图让谷歌地图标记出现在IE8和IE9中。我认为问题出在这里:

var addresses = mapAddresses;
//alert(addresses);
if (addresses != null)
{
    var marker, x;
    var infowindow = new google.maps.InfoWindow();

    for (x = 0; x < addresses.length; x++) {
        //alert(addresses.length);
        //alert('http://maps.googleapis.com/maps/api/geocode/json?address=' + addresses[x]);
        $.getJSON('http://maps.googleapis.com/maps/api/geocode/json?address=' + addresses[x] + '&sensor=false', null, function (data) {

            var p = data.results[0].geometry.location
            //alert(data.results[0].formatted_address);  // This will alert the individual addresses.

            var latlng = new google.maps.LatLng(p.lat, p.lng);
            var marker = new google.maps.Marker({
                position: latlng,
                map: map,
                title: data.results[0].formatted_address
            });

            // Add the markers to the gmarkers array.
            gmarkers.push(marker);  //<-------- No markers appear to be getting in here.
        });            
    }

    geoCodeAddress(map);
}
var addresses=mapAddresses;
//警报(地址);
如果(地址!=null)
{
var标记,x;
var infowindow=new google.maps.infowindow();
对于(x=0;xgmarkers.push(marker);//在windows XP上试用后..结果不是Google地图,我的意思是我可以静态添加标记。相反,我意识到这实际上是IE 8+9上CORS的问题

正如您在中所看到的,IE 8和IE 9对CORS只有部分支持。此外,在中还提到:

Internet Explorer直到版本10才实现CORS。之前的两个版本(8和9)通过XDomainRequest API提供了类似的功能。现在所有现代浏览器(桌面和移动)都支持它

有人讨论说,使用
jQuery.support.cors=true;
可以使它工作,但遗憾的是,我的Windows XP+IE 8没有运气

一些更有用的阅读资料:


我是通过“关闭问题”标志被召集到这里来的,所以我不是这个领域的专家。正如你所知,这是一个非常难回答的问题,因为它关注的是这样一种特定的行为。请验证标记是否与旧浏览器兼容。如果应该的话,我投票支持这个问题,希望有人能够做到o帮助您了解这个相当神秘的细节。感谢您的评论,Dustin。从Google Maps API文档中我可以看出,标记应该可以工作。Google Maps JavaScript API v3支持以下web浏览器:桌面:Internet Explorer 8–11(Windows)当前和以前版本的Firefox(Windows、Mac OS X、Linux)当前和以前版本的Chrome(Windows、Mac OS X、Linux)当前和以前版本的Safari(Mac OS X)