2013-01-22 101 views
0

我有一个qooxdoo手机应用程序,我试图实施谷歌地图。我已经看过了openlayers的例子,但它不适合我的需求。我遇到的问题是附加到google map的事件不会被触发,或者至少不会触及我定义的处理程序。独立,在qooxdoo mobile之外,它工作正常。我直接从inte _initialize函数触发loadMapLibrary,并作为页面出现事件的侦听器。这两次地图都显示正常,但没有处理事件。谷歌地图v3事件qooxdoo手机

我知道我可以触发div上的qx事件,但他们缺乏google.maps属性,我需要像纬度/经度等。我做错了什么。

桌面上的http://demo.qooxdoo.org/current/demobrowser/#showcase~Maps.html的示例似乎以我实现它的方式进行操作。我错过了什么吗?

_loadMapLibrary: function() { 

     var self = this; 
     var req = new qx.bom.request.Script(); 

     req.onload = function() { 
      self._G = google.maps; 
      self._createMap(); 
     } 

     req.open("GET", self._mapUri); 
     req.send(); 
    }, 

    _createMap: function() { 
     var mapContainer = document.getElementById("googleMap"); 

     var chicago = new this._G.LatLng(41.850033, -87.6500523); 
     var myOptions = { 
      zoom: 7, 
      mapTypeId: this._G.MapTypeId.ROADMAP, 
      center: chicago 
     //  draggable: false, 
     //  panControl: false 

     } 
     this._map = new this._G.Map(mapContainer, myOptions); 

     google.maps.event.addListener(this._map, 'click', this._startDrawing); 
     google.maps.event.addListener(this._map, 'mousemove', this._mapMouseMove); 
    //  document.addEventListener("touchmove",function(e) { 
    //  //log('touchmove'); 
    //  e.preventDefault(); 
    //  }); 
    }, 

回答

0

我已经加载谷歌地图api地理编码在应用程序的其他地方。

删除了var req = new qx.bom.request.Script();等简单地使用api,并且一切正常。