我试着检测用户设备是否是触摸屏,但是当我在'ontouchstart' in window环境下工作时,就不能正常工作了。
我尝试将dragg仅用于触摸屏设备(我希望这是移动设备中的全宽度gmap更好的解决方案,以避免触控中的滚动错误)
你能帮我找出问题吗?我检查了很多Starkoverflow的主题,但在“找不到好的解决方案”中,我可能是盲目的。
function initMap() {
var map;
var bounds = new google.maps.LatLngBounds();
if ('ontouchstart' in window){
var isDraggable = !("ontouchend" in document);
}
else {
var isDraggable = !('ontouchstart' in document.documentElement);
}
var mapOptions = {
mapTypeId: 'roadmap',
styles: WHITE,
draggable: isDraggable,
scrollwheel: false,
};谢谢你的帮助!
发布于 2016-06-08 08:13:38
使用google.maps.event.addListener(map, 'click', function(event) {。
每个Maps JavaScript API对象导出多个命名事件。对某些事件感兴趣的程序将为这些事件注册JavaScript事件侦听器,并通过调用addListener()在对象上注册事件处理程序来执行这些事件的代码。
将给定的侦听器功能添加到给定对象实例的给定事件名。返回可与removeListener()一起使用的此侦听器的标识符。
var isTouch = 'ontouchstart' in document.documentElement;
google.maps.event.addListener(map, 'click', function(event) {
if(isTouch)
console.log("Touched");
else
console.log("Can't touch this");
});https://stackoverflow.com/questions/37673502
复制相似问题