2016-07-14 42 views
0

是否有人会碰巧知道如何切换点击事件来打开和关闭“可拖动”,因此点击一次就可以拖动,再次点击并变为不活动状态?使用双击或单击事件平移控件和打开/关闭可拖动?谷歌地图v3

不断拖动可能会成为移动设备上的问题。

map.addListener('click', function() { 
    map.set('draggable', true); 
}); 

上面工作得很好,但是如何让它在下一次点击事件时切换回关闭?或者甚至可以通过双击(敲击两次)并以相同的方式再次打开?

快速注意:我原来的问题是关于谷歌地图V3上的平移控制功能,但作为第一个反应显示它已被折旧。

+0

你应该留下未经编辑的问题,将@scaisEdge的答案标记为已接受的答案,并提出另一个问题,因为也许其他人发现你的原始问题也有用...... – antonio

回答

2

设置合适的窗口范围VAR

var isDraggable = true; 

中弃用你听众测试isDraggable的状态并改变

map.addListener('click', function() { 
    if (isDraggable) then { 
    map.set('draggable', false); 
    isDraggable = false; 
    } else{ 
    map.set('draggable', true); 
    isDraggable = truen; 
    } 
}); 
+0

无论如何..已发布一个答案也为新问题希望是有用的。 – scaisEdge

2

对于你应该使用panControl平移控制..但开始v3.22似乎是由谷歌https://developers.google.com/maps/articles/v322-controls-diff#overview-map-control-deprecated

function initMap() { 
map = new google.maps.Map(document.getElementById('footer-map'), { 
    center: {lat: -37.111, lng: 144.888}, 
    zoom: 14, 
    scrollwheel: false, 
    draggable: false, 
    disableDoubleClickZoom: true, 
    panControl:true, 
    navigationControl: true, 
    navigationControlOptions: { 
    style: google.maps.NavigationControlStyle.ZOOM_PAN 
    } 
}); 
}; 
+0

谢谢,我将用一种可能的新方法更新原始问题要做到这一点,看到锅不可用。 – vrwd

+0

当你得到一个正确的答案后,以及改变这个问题是不公平.. ..正确的方式是速率propely原始问题一个新的内容发布一个新的问题.. – scaisEdge

+0

对不起,我试图问它而不是在意见中,但我无法使格式化工作,它只出现在一个大块。当我去“回答问题”时,它说“编辑你的问题,如果你需要添加更多的细节。”,我认为这意味着这是常有的做法,我在这里是新的,所以仍然试图了解事情的工作。 – vrwd