2013-06-20 33 views
1

我想添加一個右鍵點擊事件到谷歌地圖。 我的代碼中出現以下錯誤: Microsoft JScript運行時錯誤:無法獲取屬性'_ e3'的值:對象爲空或未定義。 我不確定要更改什麼。谷歌地圖右鍵單擊事件錯誤

var map; 


var directionsDisplay; 
var directionsService = new google.maps.DirectionsService(); 

function initialize() { 
directionsDisplay = new google.maps.DirectionsRenderer(); 
    var mapOptions = { 
    zoom: 8, 
    center: new google.maps.LatLng(-34.397, 150.644), 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 

    map = new google.maps.Map(document.getElementById('mapsGoogle'), 
     mapOptions); 
     directionsDisplay.setMap(map); 
     directionsDisplay.setPanel(document.getElementById('directions-panel')); 
     HomeTestMarker(); 

} 

google.maps.event.addListener(map, 'rightclick', function(event) { 
     var lat = event.latLng.lat(); 
     var lng = event.latLng.lng(); 
     alert("Lat=" + lat + "; Lng=" + lng); 
    }); 

回答

2

的經緯度對象實際上有一個緯度和經度功能不是財產。

例如: latLng.lat();

所以,你可能實際上應該是:


google.maps.event.addListener(map, 'rightclick', function(event) { 
    var lat = event.latLng.lat(); 
    var lng = event.latLng.lng(); 
    alert("Lat=" + lat + "; Lng=" + lng); 
}); 

編輯 這裏有一個工作的jsfiddle例如http://jsfiddle.net/7rZRv/

+0

拉斐爾,我作爲你說的:var緯度= event.latLng.lat() ;我沒有收到任何錯誤,但我沒有看到任何經緯度警報。 – netten

+0

您好,netten,這很奇怪,您能否提供源代碼,以便我可以看看?同時檢查我上面編輯的答案,我已經添加了帶有lat/lng警報的rightclick事件的工作jsFiddle以更好地說明它(http://jsfiddle.net/7rZRv/) –

+0

Rafael,我編輯了我的代碼以顯示初始化方法。我還有其他幾種方法用於指導,在同一頁面上設置標記等。我沒有在這裏複製該部分。我觀察到的另一件事,代碼保持不變,我得到的是在Internet Explorer中的Microsoft JScript運行時錯誤,而不是谷歌瀏覽器。截至目前,我沒有看到任何警報。 – netten