2016-06-28 73 views
0

我在地圖上有一個標記和信息窗口的Google地圖。問題是,只要我懸停在標記上,信息窗口就會顯示出來。但在鼠標移出時,信息窗口不會關閉。將鼠標懸停在Google信息窗口上

google.maps.event.addListener(infowindow,'mouseout', function() { 
        infowindow.close(); 
       }); 
+1

試試'mouseenter/mouseleave' –

+0

感謝您的回覆..我試過mouseenter/mouseleave。沒有運氣 – John

+1

你能舉一個有效的例子嗎?把你的代碼放在代碼片段或小提琴中 –

回答

2

請試試這個:

var map = new google.maps.Map(document.getElementById('map'), { 
    zoom: 4, 
    center: {lat: -25.363, lng: 131.044} 
}); 

var infowindow = new google.maps.InfoWindow({ 
    content: 'SomeText' 
}); 

map.addListener('mouseout', function() { 
    infowindow.close(); 
}); 

我們完全不認識你的代碼,所以,這只是你如何能夠解決您的問題一個例子。如果你設置一個小提琴,我們可以更好地幫助你。

如果你已經在你的代碼標記的變量,也試試這個:

您使用infowindow而不是當前!

google.maps.event.addListener(marker,'mouseout', function() { 
    infowindow.close(); 
}); 

檢查也是這樣:

Google JS API Docs

這裏你可以看到它應該是唯一可能的綁定markers像當前的結構意味着google.maps.event.addListener(...)

所以,你必須綁定mouseout事件your map,然後你可以關閉你的InfoWindow。

如果您使用jQuery(您標記的話)

$('#your-map-selector').on('mouseleave', function() { 
    infowindow.close(); 
}); 

也許讓你的DOM已準備就緒。

+1

這是有道理的,但OP不共享原始代碼,也許它是類似的東西。 –

+0

是的,我知道了,我已經更新了我的帖子:) – pleinx

+0

我的upvote給你;) –

相關問題