2
您好我有一个网站使用Google Maps API v3作为会员地点。在Google地图上的Google Maps API v3问题
但与Internet Explorer我有几个问题:
1.-当网站加载它抛出一个errror(仅限于IE)的JavaScript:_
Message: Invalid property value.
Line: 33
Char: 212
Code: 0
URI: http://maps.gstatic.com/cat_js/intl/en_gb/mapfiles/api-3/4/7/%7Bmain,geometry%7D.js
这是在JS我装: http://maps.google.com/maps/api/js?libraries=geometry &传感器=真
这是该文件的最后部分(即导致问题的部分):
[...]
var loadScriptTime = (new Date).getTime();
getScript("http://maps.gstatic.com/cat_js/intl/en_gb/mapfiles/api-3/4/7/%7Bmain,geometry%7D.js");
})();
2:地图载入和显示正确的位置,但它并不显示任何控制和无法与之互动地图(这可能是因为第一个错误)
有没有人知道如何解决这个问题?
谢谢!
EDIT --------------------------
下面是我用来加载地图的功能:
function initialize() {
london = new google.maps.LatLng(51.5, 0);
uk = new google.maps.LatLng(55.7, -4);
var myOptions = {
backgroundColor: '#FFFFF',
zoom: 12,
navigationControl: true,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map_canvas = document.getElementById("map_canvas");
map = new google.maps.Map(map_canvas, myOptions);
google.maps.event.addListener(map, 'mouseover', function(event) {
$(map_canvas).ancestors()[0].addClassName("bigGMap");
});
google.maps.event.addListener(map, 'mouseout', function(event) {
$(map_canvas).ancestors()[0].removeClassName("bigGMap");
});
google.maps.event.addListenerOnce(map, 'click', function(event) {
placeMarker(event.latLng);
});
getMyLocation();
}
function getMyLocation()
{
// Try W3C Geolocation (Preferred)
if(navigator.geolocation) {
browserSupportFlag = true;
navigator.geolocation.getCurrentPosition(function(position) {
initialLocation = new google.maps.LatLng(position.coords.latitude,position.coords.longitude);
map.setCenter(initialLocation);
}, function() {
handleNoGeolocation(browserSupportFlag);
});
// Try Google Gears Geolocation
} else if (google.gears) {
browserSupportFlag = true;
var geo = google.gears.factory.create('beta.geolocation');
geo.getCurrentPosition(function(position) {
initialLocation = new google.maps.LatLng(position.latitude,position.longitude);
map.setCenter(initialLocation);
}, function() {
handleNoGeoLocation(browserSupportFlag);
});
// Browser doesn't support Geolocation
} else
{
browserSupportFlag = false;
handleNoGeolocation(browserSupportFlag);
}
}
function handleNoGeolocation(errorFlag) {
map.setZoom(6),
map.setCenter(uk);
map.setMapTypeId(google.maps.MapTypeId.ROADMAP);
}
function loadMapScript() {
var map_api = document.createElement("script");
var gears = document.createElement("script");
map_api.type = "text/javascript";
map_api.src = "http://maps.google.com/maps/api/js?libraries=geometry&sensor=true&callback=initialize";
gears.type = "text/javascript";
gears.src = "http://code.google.com/apis/gears/gears_init.js";
document.body.appendChild(map_api);
document.body.appendChild(gears);
}
即使错误显示在谷歌代码中,当初始化地图时,问题很可能出现在您的页面中。你也可以显示该代码吗? – 2011-03-29 12:59:30
@Pekka我刚刚添加了我用来加载地图的功能。 – SERPRO 2011-03-29 13:08:49
你使用原型作为你的JS框架吗? – kjy112 2011-03-29 13:23:04