сенсорный сенсор -> маркеры карт Google не реагируют на прикосновения - PullRequest
0 голосов
/ 05 августа 2011

У меня есть еще один вопрос, который нужно решить, так как он довольно раздражающий. Я работал над приложением некоторое время, и мне удалось заставить его работать хорошо.

В частности, функция карты Google должна иметь маркеры, которые появляются, и когда вы нажимаете на них, экран должен увеличиваться и отображать некоторую информацию относительно маркера. Теперь я закодировал это, и оно отлично работает, когда вы тестируете его на Chrome. Но когда я попытался перенести его на само устройство с вкладками (Samsun Galaxy), при попытке прикоснуться к маркерам не было никакой активности.

Я довольно озадачен этим, потому что касание маркера должно быть таким же, как нажатие на него мышью, я не ошибаюсь? Мне было интересно, может ли кто-нибудь еще помочь мне с этим, потому что это что-то незначительное, что вызывает у меня адский сбой.

Код, который я добавил ниже:

var marker_icon = new google.maps.MarkerImage('images/map/' + thisIcon + '.png', new google.maps.Size(32, 32));

trafficMarker = new google.maps.Marker({
  position: new google.maps.LatLng(TrfAl.lat, TrfAl.lon),
  animation: google.maps.Animation.DROP,
  map: mapPanel,
  icon: marker_icon,
  id: 'trafficAlertPanel' + i,
  componentId: 'trafficAlertPanel' + i,
});
markerArray[i]=trafficMarker;

google.maps.event.addListener(trafficMarker, 'click', function(){
  console.log('clicked!');
  LoadIncidentMap(this.id.substring(17));
});

1 Ответ

0 голосов
/ 09 октября 2011

По какой-то причине события нажатия не запускаются при нажатии на Android и iOS. Один из обходных путей - использовать вместо этого событие 'mousedown', которое будет срабатывать при нажатии.

google.maps.event.addListener(trafficMarker, 'mousedown', function(){
    console.log('clicked!');
    LoadIncidentMap(this.id.substring(17));
});
...