マーカーとマップ境界の間の現在の距離を決定する必要があります。チップボックスをマーカーの左、右、上、または下に描画します。
次のコード行を使用して、tipbox の位置を設定します。
Label.prototype.draw = function() {
var projection = this.getProjection();
var position = projection.fromLatLngToDivPixel(this.get('position'));
// position of tipbox, depends on margin to map boaunds
var div = this.div_;
var mapWidth = parseInt($('#mapBox').css('width'));
var mapHeight = parseInt($('#mapBox').css('height'));
div.style.left = (position.x-(parseInt(div.style.width)/2)) + 'px';
div.style.top = position.y + 'px';
div.style.display = 'inline';
$('.tipBox-inner').html(''+position.x);
};
しかし、ページをドラッグすると、position.x または position.y は同じ数のピクセルを返します。画像でわかるように、x 位置は 300px(!) にあります。マーカーがページの下部などにある場合は、マーカーの上にヒントボックスを描画します。