我的自定义Google地图覆盖视图会多次绘制。
我搜索了类似的问题,发现它们是用Java而不是Javascript。
这是我的代码:
DraggableOverlay.prototype.onAdd = function () {
var container = document.createElement('div'),
that = this;
if (typeof this.get('content').nodeName !== 'undefined') {
container.appendChild(this.get('content'));
} else {
if (typeof this.get('content') === 'string') {
container.innerHTML = this.get('content');
} else {
return;
}
}
container.style.position = 'absolute';
container.draggable = true;
google.maps.event.addDomListener(this.get('map').getDiv(),
'mouseleave',
function () {
google.maps.event.trigger(container, 'mouseup');
});
this.set('container', container)
if (!this.getPanes()) {
return;
}
this.getPanes().floatPane.appendChild(container);
}
DraggableOverlay.prototype.draw = function () {
if (!this.getProjection()) {
return;
}
var pos = this.getProjection().fromLatLngToDivPixel(this.get('position'));
if (!this.get('container')) {
return;
}
this.get('container').style.left = pos.x + 'px';
this.get('container').style.top = pos.y + 'px';
};
但我只画了一次。如何多次绘制?
以前有人遇到过这个问题吗?
谢谢。