2011-08-14 26 views
29

की '__e3_' पढ़ा नहीं जा सकता यहाँ श्रोता मैं जोड़ रहा है -गूगल मैप्स एपीआई: गुण अपरिभाषित

var map; 
    var geocoder; 
    function initialize() { 
     var myOptions = { 
      zoom: 8, 
      center: new google.maps.LatLng(22, 88), 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     map = new google.maps.Map(document.getElementById('map_canvas'), myOptions); 
    } 
    //google.maps.event.addDomListener(window, 'load', initialize); 
    google.maps.event.addListener(map, 'click', function(event) { 
     geocoder = new google.maps.Geocoder(); 
     geocoder.geocode({ 'latLng': event.latLng}, function(results, status) { 

      if (status == google.maps.GeocoderStatus.OK) { 
       alert(results); 
      } else { 
       alert("Geocode was not successful for the following reason: " + status); 
      } 
     }); 
    }); 

लेकिन यह कंसोल में इस त्रुटि पैदा कर रहा है -

Uncaught TypeError: Cannot read property '__e3_' of undefined 
Ke 
Ie 
R.addListener 
(anonymous function) 

खोज की कोशिश की। लेकिन कोई समाधान नहीं मिला।

+3

क्या आपको कुछ मिला? मेरे पास एक ही समस्या है – J4N

उत्तर

51

अपने श्रोता को प्रारंभकर्ता कार्य में ले जाएं।

+11

क्या यह एक टिप्पणी होनी चाहिए? –

+1

यह मेरे लिए काम किया! – CristiC

+0

अंत में! धन्यवाद! –

9

अपने कोड का केवल एक छोटा सा हिस्सा बताना मुश्किल है, लेकिन ऐसा लगता है कि इसे "मानचित्र" नहीं मिल रहा है।

या तो अपने नक्शे चर वैश्विक नहीं है, या किसी भी तरह कि कोड से पहुँचा जा सकता है या नक्शे के साथ नहीं बनाया गया था: इससे पहले कि आप कोशिश करते हैं और एक नया क्लिक श्रोता जोड़ने

map = new google.maps.Map(....) 

+0

'map' वैश्विक है। मैंने पूर्ण कोड के साथ प्रश्न अद्यतन किया। इसकी जांच - पड़ताल करें। –

1

ऐसा होता है जब आपका डेटा एसिंक्रोनस लोड होता है। आप ajaxStop समारोह में अपने document.ready कोड शामिल करके कि बच सकते हैं

$().ready(function() { 
    $(document).ajaxStop(function() { 
     /* your code here ?*/ 
    }); 
}); 
+5

प्रश्न से संबंधित किसी भी रूप में यह कैसे है? –

2

मैं अगर यह आपके लिए एक मुद्दा हो सकता क्योंकि हम अपने कोड का हिस्सा नहीं दिख रहा है जहां आप लिंक कर रहे पता नहीं है Google मानचित्र लाइब्रेरी में, लेकिन मैंने अभी पाया कि मुझे यह कारण मिल रहा था कि यह त्रुटि "विज़ुअलाइज़ेशन" लाइब्रेरी को शामिल करने की कोशिश से थी। सौभाग्य से मुझे अब इसका उपयोग करने की आवश्यकता नहीं थी।

मैं इस किया था:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?libraries=geometry,visualization&sensor=true"></script> 

और यह करने के लिए इसे बदल:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?libraries=geometry&sensor=true"></script> 

मैं अब E3 त्रुटि मिलती है।

वैसे, मेरे लिए यह त्रुटि सुसंगत नहीं थी और मैं इसे को दोहराने के लिए नहीं समझ सका। मुझे वहां बैठना पड़ा और त्रुटि होने तक बार-बार ताज़ा करना पड़ा।

मुझे आशा है कि इससे किसी की मदद मिलेगी।

0

हां, दूसरा ... नक्शा चर को बाहर और इसके उपयोग से पहले घोषित किया जाना चाहिए। चूंकि Google मानचित्र श्रोता इसे नहीं ढूंढ पा रहे हैं।

+1

इसे एक टिप्पणी के रूप में जोड़ा जाना चाहिए, जवाब नहीं। –

+0

कभी-कभी उपयोगकर्ता की प्रतिष्ठा टिप्पणी करने के लिए बहुत कम होती है, इसलिए वे जो भी कर सकते हैं वह एक उत्तर जोड़ता है – Hanno

1

मेरे मामले में यह था कि वैश्विक मानचित्र चर प्रारंभकर्ता में अधिलेखित किया गया था, लेकिन मैं उस वैश्विक चर का उपयोग किसी अन्य कार्य में करना चाहता था और इससे समस्या उत्पन्न हुई।

0

ऐसा कुछ?

var lati,longt; //contains latitude and longitude 

func newLatLOng(){ 
    get new value of latLong 
    initMap(); 

} 

var map = 0; 
function initMap() { 
    if (map ===0) 
    { 
    //load first time 
      lati= 28.5072216; 
      longt= 77.4971153; 
      map = new google.maps.Map(document.getElementById('map'), { 
        center: {lat: lati, lng: longt}, 
        zoom: 13 
      }); 
    }else 
    { 
      var geolocation = { lat:lati, 
          lng: longt }; 
      google.maps.event.trigger(map, 'resize'); 
      map.setCenter(geolocation); 
    } 
0

मेरे मामले में google.maps.event.addListener(marker, 'click', function() { मार्कर चर अपरिभाषित था। और इसलिए त्रुटि। किसी के लिए उपयोगी हो सकता है।

संबंधित मुद्दे