Сенча Touch Google Maps слушатель маркера не работает - PullRequest
0 голосов
/ 05 августа 2011

У меня проблема со слушателями в Картах Google.

var marker_icon = new google.maps.MarkerImage('images/map/' + thisIcon + '.png', new google.maps.Size(32, 32));        var trafficMarker = new google.maps.Marker({
        position: new google.maps.LatLng(alert.lat, alert.lon),
        map: trafficMap,
        icon: marker_icon,
        id: 'trafficAlertIcon' + i
    });
    console.log('Test Log3');

    google.maps.Event.addListener(trafficMarker, 'mousedown', function() 
    {
        console.log('touched marker');
        trafficTabPanel.layout.setActiveItem(1, {type: 'slide', direction: 'left'});
        LoadIncidentMap(this.id.substring(16));
    });

Кажется, что проблема со слушателем, так как он не попадает в console.log ('маркер прикосновения');.

Я попытался изменить слушателя на TrafficMap, чтобы увидеть, отвечает ли он, но это не так. Я пробовал, щелкать, mousedown, mouseup и т. Д.

Спасибо.

Ответы [ 2 ]

1 голос
/ 01 сентября 2011

В текущей версии Sencha Touch есть ошибка.

Здесь есть исправление: - Слушатель карт при нажатии .

Просто добавьте следующий код перед запуском карт:

Ext.gesture.Manager.onMouseEventOld = Ext.gesture.Manager.onMouseEvent;
Ext.gesture.Manager.onMouseEvent = function(e) {
var target = e.target;

while (target) {
    if (Ext.fly(target) && Ext.fly(target).hasCls('x-map')) {
        return;
    }

    target = target.parentNode;
}

this.onMouseEventOld.apply(this, arguments);
};

Надеюсь, это поможет!

0 голосов
/ 05 августа 2011

google.maps.event

не

google.maps.Event

...