2013-03-14 63 views
8

我試圖禁用地圖上的縮放,當我點擊一個CircleMarker對象,但直到現在,沒有成功。禁用地圖縮放CircleMarker雙擊小冊子

這是我的代碼:

var myCircle = new L.CircleMarker(new L.LatLng(50.924480, 10.758276), 10).addTo(map); 
myCircle.on("click", function() { 
    //my click stuff 
}); 
myCircle.on("dblclick", function() { 
    //my dblclick stuff 
}); 

每次DblClick事件被觸發時,地圖縮放,如何禁用呢?

回答

20

嘗試

var myCircle = new L.CircleMarker(new L.LatLng(50.924480, 10.758276), 10).addTo(map); 
map.doubleClickZoom.disable(); 

參考 this document

3

首先,你需要禁用地圖雙擊縮放,然後在地圖上點擊事件再次啓用它。所以當你雙擊標記後雙擊地圖時,它會再次縮放;)我嘗試過,它對我來說完美無缺!請享用!

map.doubleClickZoom.disable(); 

map.on('click', function (e) { 
    map.doubleClickZoom.enable(); 
}); 
+1

這會後1次點擊啓用它永遠。這是如何完美運作的? – dimitris93 2016-04-14 20:36:34

-1

您可以從您的dblclick處理程序中的return false這將停止事件傳播,例如,

myCircle.on("dblclick", function() { 
    //my dblclick stuff 
    return false; 
}); 

現在其他元素(地圖如)將不會處理該事件