2016-07-25 33 views

回答

2

「條件」值必須是事件發生時調用的函數。 OpenLayers不會附帶ol.events.condition.ctrlKeyOnly,但您可以定義自己的。你需要先禁用默認DragZoom互動,然後加上自己:

var interactions = ol.interaction.defaults({ 
    shiftDragZoom: false 
}); 
interactions.push(new ol.interaction.DragZoom({ 
    duration: 200, 
    condition: function(mapBrowserEvent) { 
    var originalEvent = mapBrowserEvent.originalEvent; 
    return (
     originalEvent.ctrlKey && 
     !(originalEvent.metaKey || originalEvent.altKey) && 
     !originalEvent.shiftKey); 
    } 
})); 

看到它在行動中JSFiddle demo

+0

非常感謝亞歷山大,完美的作品!再次感謝您的快速回答和小提琴。 –

相關問題