2013-03-14 20 views
8

Sto provando a disabilitare lo zoom sulla mappa quando clicco su un oggetto CircleMarker, ma fino ad ora, nessun successo.Disattiva zoom mappa su CircleMarker doppio click nel volantino

Questo è il mio codice:

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 
}); 

Ogni volta che l'evento DoppioClic viene licenziato, la mappa è ingrandita, come disattivarlo?

risposta

20

provare

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

riferiscono this document

3

In primo luogo è necessario disabilitare la mappa doppio click zoom e quindi attivare di nuovo l'evento carta click. Quindi quando fai doppio clic sulla mappa dopo aver fatto doppio clic sull'indicatore, lo zoom di nuovo;) L'ho provato e funziona perfettamente per me! Godere!

map.doubleClickZoom.disable(); 

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

Ciò consentirà per sempre dopo il 1 click. Come funziona perfettamente? – dimitris93

-1

È possibile return false dal vostro gestore DoppioClic che si fermerà l'evento dalla moltiplicazione per esempio

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

Ora altri elementi (come ad esempio la mappa) non gestirà l'evento

Problemi correlati