0

我真的陷入了困境,试图在同一块中同时使用Google Maps API和JQuery API。我的页面是jspx(Spring),我需要JQuery以便我可以获取和分析谷歌融合表数据。JQuery和谷歌地图JS api不能一起工作

但是,当我将两个库声明为一起时,地图div将不会加载(如果我单独加载Google地图,则所有映射都可以正常工作)。

下面是相关代码:

<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&amp;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块检索剥夺统计,然而,尽管我的努力,功能不呼吁页面加载。

+0

检查您的控制台是否有错误,并尝试将其置于[fiddle](http://jsfiddle.net)中... – adeneo

+0

@adeneo我检查了控制台中的错误,它显示“Uncaught ReferenceError:谷歌未定义“,并指向”谷歌.maps.event.addDomListener(窗口,'加载',初始化)..我也通过小提琴运行我的代码,它说我的JavaScript是全部有效.. –

+0

工作jsfiddle让我们看看为什么你会得到这个错误。什么是''在api包含标签? – geocodezip

回答

0

感谢指导家伙,但我设法通过创建一个头并在头文件中声明jQuery并将google src保留在原来的位置来排序冲突和问题。

<head> 
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.1.js"></script> 
<script type="text/javascript"> 

</script> 
</head> 

再次感谢!

2

你缺少第一个脚本关闭标签包括:

<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&amp;sensor=false" type="text/javascript"> 
        <jsp:text/> 
       </script> 

应该是:

<script src="http://code.jquery.com/jquery-latest.pack.js" type="text/javascript" ></script> 
<script src="http://maps.googleapis.com/maps/api/js?sensor=false" type="text/javascript"></script> 

(任意顺序应该工作,并没有版本规范应工作, & key = MYKEY,只是注意到你也在key = MYKEY之前缺少了&)