我正在使用以下js创建一个类函数来创建新的Google地图。
我有一个问题,它有一个缩放变量的默认值,并且能够在创建对象后更改它。
以下是该函数的一段代码:
function GMap(lat,lng){
this.latitude = lat;
this.longitude = lng;
this.mapCenter = new google.maps.LatLng(lat, lng);
this.map = null;
this.zoom = 20; // As a default value
this.setZoom = function(value)
{
this.zoom = value;
}
this.getZoom = function()
{
return this.zoom;
}
this.mapOptions = {
center: this.mapCenter,
zoom: this.zoom
};
this.createMap = function(htmlElement)
{
map = new google.maps.Map(document.getElementById(htmlElement), this.mapOptions);
return this.map;
}
}
我这样称呼上述内容:
var gMap= new GMap(10, 20);
gMap.setZoom(9);
console.log(gMap.getZoom()); //Returns 9 successfully
google.maps.event.addDomListener(window, 'load', gMap.createMap('mapDiv')); //but creates a map with default zoom 20