Я использую плагин InfoBox, и у меня есть следующий код:
Gmaps.map.infobox = function(boxText) {
return {
content: boxText
,disableAutoPan: false
,maxWidth: 0
,pixelOffset: new google.maps.Size(-140, 0)
,zIndex: null
,boxStyle: {
background: "url('http://google-maps-utility-library-v3.googlecode.com/svn/tags/infobox/1.1.5/examples/tipbox.gif') no-repeat"
,opacity: 0.75
,width: "280px"
}
,closeBoxMargin: "10px 2px 2px 2px"
,closeBoxURL: "http://www.google.com/intl/en_us/mapfiles/close.gif"
,infoBoxClearance: new google.maps.Size(1, 1)
,isHidden: false
,pane: "floatPane"
,enableEventPropagation: false
}};
С маркером размером 77x80 пикселей, когда отображается InfoWindow, оно правильно выравнивается по нижней части маркера, как вы можете видеть здесь:
Однако, если я изменю размер маркера на 35x44 пикселей, InfoWindow не будет точно выровнен по нижней части маркера, как вы можете видеть здесь:
Любые мысли о том, как я могу сделать его полностью выровненным внизу?
РЕДАКТИРОВАТЬ: Для небольших маркеров я создал их, установив это в библиотеке, которую я использую (gmaps4rails):
marker.picture({
:picture => "assets/juice-pin-small.png",
:width => 35,
:height => 44,
})
Для больших маркеров я создаю их, устанавливая это:
marker.picture({
:picture => "assets/juice-pin-small.png",
:width => 70,
:height => 88,
:marker_anchor => [23,78]
})
infobox.open(map, marker);
, это зависит от определения маркера. И это тоже может быть не в том месте, если его якорь неверен. - person Andrew Leach   schedule 07.05.2012