簡體   English   中英

Google Maps API:強制地圖不處理信息框內的單擊

[英]Google maps api: force map to do not handle click inside infobox

在我的應用程序用戶中,當他單擊地圖時創建標記。 所以這樣的代碼:

function placeMarker(map, location) {
     var marker = new google.maps.Marker({
         position: location,
         map: map
     //other...
     var infowindow = new google.maps.InfoWindow({
         content: ballon.get(0)
     });

     ballon.find("#delete-btn").click(function(){
        infowindow.close();
        $mapPreview.data("markers")[id].marker.setMap(null);
        delete $this.data("markers")[id];
     });
});

"#delete-btn"infowindow 問題是,當用戶單擊"#delete-btn"他還在地圖上創建了新標記。 如何避免這種情況?

baloon.find("#delete-btn").click(function(e){
    e.stopPropagation();

將事件變量傳遞給click函數(e) ,然后使用e.stopPropagation()停止事件傳播

這將阻止事件通過DOM冒泡並被其他各種偵聽器(如地圖上的偵聽器)拾取。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM