Наистина съм блокиран, опитвайки се да използвам както API на Google Карти, така и API на JQuery в един и същи блок. Страницата ми е jspx (Spring) и имам нужда от JQuery, за да мога да получа и анализирам данни от google fusion table.
Въпреки това, когато декларирам двете библиотеки заедно, map div няма да се зареди (ако заредя само Google Maps, цялото картографиране работи добре).
Ето съответния код:
<script src="http://code.jquery.com/jquery-latest.pack.js" type="text/javascript"/>
<script src="http://maps.googleapis.com/maps/api/js?v=3key=MYKEY&sensor=false" type="text/javascript">
<jsp:text/>
</script>
<script type="text/javascript">
//<![CDATA[
var map;
function initialize() {
var mapDiv = document.getElementById('map_canvas');
var geocoder = new google.maps.Geocoder();
retrieveDeprivationFigure();
if (geocoder) {
geocoder.geocode({ 'address': '${property.postcode}' }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var latlng = new google.maps.LatLng(results[0].geometry.location.lat(), results[0].geometry.location.lng())
var mapOptions = {
zoom: 15,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('map_canvas'),
mapOptions);
}
function retrieveDeprivationFigure(){
var postcode = '${property.postcode}'.split(' ').join('');
var url = "https://www.googleapis.com/fusiontables/v1/query?sql=SELECT LSOA FROM XXXXXXXX WHERE Postcode='"+ postcode +"'&key=AIzaSyBQaHw1aSWtIjQzAiriBPC3hvm7Bs1R35U&jsonCallback=?";
var localIMDS;
console.log("this far");
$.getJSON(url,
function retrieveIMDS(){
console.log(url);
});
};
google.maps.event.addDomListener(window, 'load', initialize);
// ]]>
</script>
Всички указания или идеи биха ми помогнали много, дори се опитах да извлека статистиката за лишаване чрез JQuery в отделен JS блок, но въпреки усилията ми функцията не беше извикана при зареждане на страницата.