title: Having this Uncaught TypeError: Cannot read property '__e3_' of undefined
body: <p>I am new to Google Maps and this error just show up when i add the Tabstrips of KendoUI</p>
  
  <p>now the maps is all messed up , its like it doesn't even show on the page and i dont event know what happened. All i see is the Error on Chrome Where it points out on this codes:</p>
  
  <pre><code>google.maps.event.addListener(map2, 'idle', function () {
                                      $('#places1').find('li a').css('display', function () {
                                          return (map2.getBounds().contains($(this).data('location')))
                        ? ''
                        : 'none';
                                      });
                                  });
  </code></pre>
  
  <p>And this </p>
  
  <pre><code>google.maps.event.trigger(map2, 'bounds_changed');
  </code></pre>
  
  <p>Can someone help me with this situation because I'm having a Hard time with this errors</p>
  
  <p>By the way this is the whole set of codes:</p>
  
  <pre><code>&lt;div id="tabstrip"&gt;
              &lt;ul&gt;
                  &lt;li class="k-state-active"&gt;Customer &lt;/li&gt;
                  &lt;li&gt;Worker&lt;/li&gt;
              &lt;/ul&gt;
              &lt;div&gt;
                  &lt;div id="map1" &gt;
                  &lt;/div&gt;
                  &lt;div id="results"&gt;
                      &lt;h2&gt;
                          Results&lt;/h2&gt;
                      &lt;ul id="places"&gt;
                      &lt;/ul&gt;
                  &lt;/div&gt;
              &lt;/div&gt;
              &lt;div&gt;
                  &lt;div id="map2" style="width: 900px; height: 500px;" &gt;
                  &lt;/div&gt;
                  &lt;div id="results1"&gt;
                      &lt;h2&gt;
                          Results&lt;/h2&gt;
                      &lt;ul id="places1"&gt;
                      &lt;/ul&gt;
                  &lt;/div&gt;
              &lt;/div&gt;
          &lt;/div&gt;
  </code></pre>
  
  <p>And this is the Scripts:</p>
  
  <pre><code>&lt;script type="text/javascript"&gt;
          var infoBubble2, geocode2;
          var map2;
          //var mgr;
  
          function initialize1() {
              var minZoomLevel = 4;
              var zooms = 7;
              geocoder2 = new google.maps.Geocoder();
              geocode2 = new google.maps.Geocoder();
              $.getJSON('/Dashboard/LoadAddress', function Geocoding(address) {
                  $.each(address, function () {
                      var currValAddress = this["AddressLine1"];
                      geocode1.geocode({ 'address': currValAddress }, function (results1, status) {
                          if (status == google.maps.GeocoderStatus.OK) {
                              var addresse = {
                                  zoom: 8,
                                  center: results1[0].geometry.location,
                                  mapTypeId: google.maps.MapTypeId.ROADMAP
                              }
                              map2 = new google.maps.Map(document.getElementById('map2'), addresse);
                              // Bounds for North America
                              var strictBounds = new google.maps.LatLngBounds(
                        new google.maps.LatLng(15.70, -160.50),
                        new google.maps.LatLng(68.85, -55.90));
  
                              // Listen for the dragend event
                              google.maps.event.addListener(map2, 'dragend', function () {
                                  if (strictBounds.contains(map2.getCenter())) return;
                                  // We're out of bounds - Move the map back within the bounds
  
                                  var c = map.getCenter(),
                        x = c.lng(),
                        y = c.lat(),
                        maxX = strictBounds.getNorthEast().lng(),
                        maxY = strictBounds.getNorthEast().lat(),
                        minX = strictBounds.getSouthWest().lng(),
                        minY = strictBounds.getSouthWest().lat();
  
                                  if (x &lt; minX) x = minX;
                                  if (x &gt; maxX) x = maxX;
                                  if (y &lt; minY) y = minY;
                                  if (y &gt; maxY) y = maxY;
  
                                  map.setCenter(new google.maps.LatLng(y, x));
                              });
  
                              // Limit the zoom level
                              google.maps.event.addListener(map2, 'zoom_changed', function () {
                                  if (map2.getZoom() &lt; minZoomLevel) map2.setZoom(minZoomLevel);
                              });
                          }
                          else {
                              alert("Geocode was not successful for the following reason: " + status);
                          }
                      })
                  });
              });
              codeAddress1();
          }
  
  
  
          var iconBase2 = 'https://maps.google.com/mapfiles/kml/shapes/';
          function codeAddress1() {
              geocoder2 = new google.maps.Geocoder();
              infoBubble = new InfoBubble({
                  map: map2,
                  shadowStyle: 0,
                  padding: 10,
                  borderRadius: 10,
                  arrowSize: 15,
                  maxWidth: 300,
                  borderWidth: 1,
                  borderColor: '#ccc',
                  arrowPosition: 50,
                  arrowStyle: 0
              });
              $.getJSON('/Dashboard/LoadCustomerList', function Geocode(address) {
                  $.each(address, function () {
                      var currVal = this["AddressLine1"];
                      var Name = this["Name"];
                      var Gender = this["Gender"];
                      var Bdate = this["Birthdate"];
                      var clientID = this["ClientID"];
                      var ID = this["ID"];
                      geocoder2.geocode({ 'address': currVal }, function (results1, status) {
                          setTimeout(function () {
                              if (status == google.maps.GeocoderStatus.OK) {
                                  var marker = new google.maps.Marker({
                                      map: map2,
                                      icon: iconBase2 + 'man.png',
                                      position: results1[0].geometry.location,
                                      title: currVal
                                  })
  
  
                                  var link = $('&lt;a href="#"&gt;' + currVal + '&lt;/a&gt;')
                           .data('location', results1[0].geometry.location);
                                  $('#places1').append($('&lt;li id=Meow1&gt;').append(link));
                                  link.on('click', function (event) {
                                      event.preventDefault();
                                      google.maps.event.trigger(address[0], "click");
                                      infoBubble.removeTab(0);
                                      infoBubble.addTab(Name, "Name: " + Name + "&lt;br&gt; Address: " + currVal + "&lt;br&gt; Gender: " + Gender + "&lt;br&gt; Birthdate: " + Bdate + "&lt;br&gt;&lt;br&gt;" + '&lt;center&gt;&lt;a href="/Customer/CustomerDetails?clientCusId=' + ID + '&amp;clientId=' + clientID + '"&gt;View Profile&lt;/a&gt;&lt;/center&gt;');
                                      infoBubble.open(map2, marker);
                                  });
  
                                  google.maps.event.addListener(map2, 'idle', function () {
                                      $('#places1').find('li a').css('display', function () {
                                          return (map2.getBounds().contains($(this).data('location')))
                        ? ''
                        : 'none';
                                      });
                                  });
  
  
  
                                  google.maps.event.addListener(marker, 'click', (function (marker, i) {
                                      return function () {
                                          infoBubble.removeTab(0);
                                          infoBubble.addTab(Name, "Name: " + Name + "&lt;br&gt; Address: " + currVal + "&lt;br&gt; Gender: " + Gender + "&lt;br&gt; Birthdate: " + Bdate + "&lt;br&gt;&lt;br&gt;" + '&lt;center&gt;&lt;a href="/Customer/CustomerDetails?clientCusId=' + ID + '&amp;clientId=' + clientID + '"&gt;View Profile&lt;/a&gt;&lt;/center&gt;');
                                          infoBubble.open(map2, marker);
                                      }
                                  })(marker, currVal));
                                  address.push(marker);
  
                              }
                              else if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT) {
                                  //                                setTimeout(function () {
                                  //                                    Geocode(address);
                                  //                                }, 200);
                              }
                              else {
                                  alert("Geocode was not successful for the following reason: " + status);
                              }
  
                          })
                      });
  
                  });
                  google.maps.event.trigger(map2, 'bounds_changed');
              });
          }
  
          window.onload = function () {
              initialize1();
          }
      &lt;/script&gt;
  @*&lt;script type="text/javascript"&gt;
          var geocoder, infoBubble, geocode;
          var map;
          //var mgr;
  
          function initialize() {
              var minZoomLevel = 4;
              var zooms = 7;
  
              geocoder = new google.maps.Geocoder();
              geocode = new google.maps.Geocoder();
              $.getJSON('/Dashboard/LoadAddress', function Geocoding(address) {
                  $.each(address, function () {
                      var currValAddress = this["AddressLine1"];
                      geocode.geocode({ 'address': currValAddress }, function (results, status) {
                          if (status == google.maps.GeocoderStatus.OK) {
                              var addresse = {
                                  zoom: 8,
                                  center: results[0].geometry.location,
                                  mapTypeId: google.maps.MapTypeId.ROADMAP
  
  
                              }
                              map = new google.maps.Map(document.getElementById('map1'), addresse);
                              // Bounds for North America
                              var strictBounds = new google.maps.LatLngBounds(
                        new google.maps.LatLng(15.70, -160.50),
                        new google.maps.LatLng(68.85, -55.90));
  
                              // Listen for the dragend event
                              google.maps.event.addListener(map, 'dragend', function () {
                                  if (strictBounds.contains(map.getCenter())) return;
  
  
          // We're out of bounds - Move the map back within the bounds
  
                              var c = map.getCenter(),
                    x = c.lng(),
                    y = c.lat(),
                    maxX = strictBounds.getNorthEast().lng(),
                    maxY = strictBounds.getNorthEast().lat(),
                    minX = strictBounds.getSouthWest().lng(),
                    minY = strictBounds.getSouthWest().lat();
  
                              if (x &lt; minX) x = minX;
                              if (x &gt; maxX) x = maxX;
                              if (y &lt; minY) y = minY;
                              if (y &gt; maxY) y = maxY;
  
                              map.setCenter(new google.maps.LatLng(y, x));
                          });
  
                          // Limit the zoom level
                          google.maps.event.addListener(map, 'zoom_changed', function () {
                              if (map.getZoom() &lt; minZoomLevel) map.setZoom(minZoomLevel);
                          });
                      }
                      else {
                          alert("Geocode was not successful for the following reason: " + status);
                      }
                  })
              });
          });
          codeAddress();
      }
      var iconBase = 'https://maps.google.com/mapfiles/kml/shapes/';
      function codeAddress() {
          infoBubble = new InfoBubble({
              map: map,
              shadowStyle: 0,
              padding: 10,
              borderRadius: 10,
              arrowSize: 15,
              maxWidth: 300,
              borderWidth: 1,
              borderColor: '#ccc',
              arrowPosition: 50,
              arrowStyle: 0
          });
          $.getJSON('/Dashboard/LoadWorkerList', function Geocode(address) {
              $.each(address, function () {
                  var currVal = this["AddressLine1"];
                  var Name = this["Name"];
                  var Gender = this["Gender"];
                  var Bdate = this["Birthdate"];
                  var ID = this["Worker_ID"];
                  geocoder.geocode({ 'address': currVal }, function (results, status) {
                      if (status == google.maps.GeocoderStatus.OK) {
                          var marker = new google.maps.Marker({
                              map: map,
                              icon: iconBase + 'man.png',
                              position: results[0].geometry.location,
                              title: currVal
                          })
  
  
                          var link = $('&lt;a href="#"&gt;' + currVal + '&lt;/a&gt;')
                       .data('location', results[0].geometry.location);
                          $('#places').append($('&lt;li id=Meow&gt;').append(link));
                          link.on('click', function (event) {
                              event.preventDefault();
                              google.maps.event.trigger(address[0], "click");
                              infoBubble.removeTab(0);
                              infoBubble.addTab(Name, "Name: " + Name + "&lt;br&gt; Address: " + currVal + "&lt;br&gt; Gender: " + Gender + "&lt;br&gt; Birthdate: " + Bdate + "&lt;br&gt;&lt;br&gt;" + '&lt;center&gt;&lt;a href="/Worker/WorkerDetails?workerId=' + ID + '"&gt;View Profile&lt;/a&gt;&lt;/center&gt;');
                              infoBubble.open(map, marker);
                          });
  
                          google.maps.event.addListener(map, 'idle', function () {
                              $('#places').find('li a').css('display', function () {
                                  return (map.getBounds().contains($(this).data('location')))
                    ? ''
                    : 'none';
                              });
                          });
  
  
  
                          google.maps.event.addListener(marker, 'click', (function (marker, i) {
                              return function () {
                                  infoBubble.removeTab(0);
                                  infoBubble.addTab(Name, "Name: " + Name + "&lt;br&gt; Address: " + currVal + "&lt;br&gt; Gender: " + Gender + "&lt;br&gt; Birthdate: " + Bdate + "&lt;br&gt;&lt;br&gt;" + '&lt;center&gt;&lt;a href="/Worker/WorkerDetails?workerId=' + ID + '"&gt;View Profile&lt;/a&gt;&lt;/center&gt;');
                                  infoBubble.open(map, marker);
                              }
                          })(marker, currVal));
                          address.push(marker);
  
                      }
                      else if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT) {
                          //                                setTimeout(function () {
                          //                                    Geocode(address);
                          //                                }, 200);
                      }
                      else {
                          alert("Geocode was not successful for the following reason: " + status);
                      }
                  })
              });
              google.maps.event.trigger(map, 'bounds_changed');
          });
      }
  
      window.onload = function () {
          initialize();
  
      }
      &lt;/script&gt;
  </code></pre>