2013-02-21 96 views
12

我发展与VB.NET和谷歌地图3.0版应用程序,并试图建立一个地图这些属性:遗漏的类型错误:无法读取的特性“__e3_”未定义

<script type="text/javascript"> 
    $(document).ready(function(){ 
     var sPath ="images/AppIcons/Vehicles/icon05.png,"; 
     var markers= new google.maps.Marker({ 
      position : new google.maps.LatLng(4.759915, -74.04083), 
      map : map, 
      icon : new google.maps.MarkerImage(+ sPath + null, null, null, new google.maps.Size(32, 32)), 
      animation: google.maps.Animation.DROP, 
      title : "buena" 
     }); 
     var myLatlng = new google.maps.LatLng(0, 0); 
     var mapOptions={zoom: 3,center: new google.maps.LatLng(4.590798,-74.084244),mapTypeId: google.maps.MapTypeId.ROADMAP }; 
     var map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions); 
     var marker = setMarkers(map); 
     var infowindow = new google.maps.InfoWindow({Content : '<b>FM3200 - FM3200</b><div><font size=1>&nbsp;</font></div><div><u>20/01/2013 04:30:56 p.m. - Voltaje Externo - (Norte)</u></div>Ubicacion Invalida In1:0 In2:0 In3:0 Batext:4.45V Vel:0 Odom:0 Ibutton:0 Oficina Principal Risk, Kmh: 0'}); 
     if (markers !='') { 
      google.maps.event.addListener(marker, 'click', function() { 
       infowindow.open(map,marker); 
       /*if (marker.getAnimation() != null) { 
        marker.setAnimation(null); 
       } else { 
        marker.setAnimation(google.maps.Animation.BOUNCE); 
       }*/ 
      }); 
     } 
    }); 
    function setMarkers(map,markers) { 
     var marker =markers; 
     if (marker !='') { 
      return marker; 
     } 
    }</script> 

当我运行此代码,出现此错误消息:

Uncaught TypeError: Cannot read property '__e3_' of undefined main.js:18 

如何解决此错误?

+0

你的功能setMarkers()不创建适当的标记对象。 – Marcelo 2013-02-21 17:31:44

+0

也许使用[onload event](http://stackoverflow.com/questions/3698200/window-onload-vs-document-ready)而不是ready事件 – geocodezip 2013-02-21 18:06:36

回答

15

将创建的map移动到该函数的顶部。

目前使用map作为map -option为markers,在那里它有望成为google.maps.Map -instance(但它是不确定的,因为地图尚未创建)