Javascript 谷歌地图:想在将DragTable设置为true后直接拖动地图吗
为了避免在小型浏览器窗口中出现不必要的滚动,我将我的谷歌地图的Javascript 谷歌地图:想在将DragTable设置为true后直接拖动地图吗,javascript,google-maps,Javascript,Google Maps,为了避免在小型浏览器窗口中出现不必要的滚动,我将我的谷歌地图的draggable选项设置为false: if (document.getElementById('map').offsetWidth < 350 ) map.setOptions({ draggable: false, scrollwheel: false }); 这很好,一秒钟后光标变为手形符号。但要拖动地图,我必须松开鼠标按钮一次,然后再按一次。因此,现在我想知道如何直接拖动地图(鼠标
draggable
选项设置为false:
if (document.getElementById('map').offsetWidth < 350 )
map.setOptions({
draggable: false,
scrollwheel: false
});
这很好,一秒钟后光标变为手形符号。但要拖动地图,我必须松开鼠标按钮一次,然后再按一次。因此,现在我想知道如何直接拖动地图(鼠标按钮已经按下,并且仍然按下)
我尝试在draggable_true()
函数中使用MouseEvent来模拟另一个mousedown,但不起作用:
var event = new MouseEvent('mousedown', {
'view': window,
'bubbles': true,
'cancelable': true
});
document.getElementById('map').dispatchEvent(event);
我还尝试了mouseup,然后mousedown,但也没有结果(甚至没有错误或警告)
有什么想法吗?谢谢。我使用jQuery Mobile解决了一个类似的问题,因为此事件允许您检测长按,然后将mousemove事件绑定到拖动函数。当用户释放鼠标时,您解除了mousemove事件的绑定,一切恢复正常。请注意,我并没有在谷歌地图上使用这种技术,但它仍然可以工作
var event = new MouseEvent('mousedown', {
'view': window,
'bubbles': true,
'cancelable': true
});
document.getElementById('map').dispatchEvent(event);