2011-11-02 173 views
1

我的建築,像谷歌地圖衝突PHP和JavaScript

3個標籤的功能的應用程序創建使用javascript:

  1. MapView的
  2. 的ListView
  3. 後活動

當我加載頁面時,默認操作是加載谷歌地圖,所有我的事件從數據庫中檢索se,它運行正常。但是,當我點擊下一個發佈後事件標籤時,該地圖正在加載,但在該空間中完全不可見。它拖到一個角落。

任何人都可以幫我嗎?

我是PHP新手,Google地圖。

按鈕點擊我也做了使用JavaScript。

這裏是我的HTML代碼:

<!DOCTYPE html> 
<html lang="en"> 

<head> 
    <meta charset="utf-8" /> 
    <title>Google Maps JavaScript API Example: Simple Map</title> 
    <script src="//maps.google.com/maps?file=api&amp;v=2&amp;sensor=false&amp;key=[My key goes here]" type="text/javascript"></script> 
    <script type="text/javascript"> 
    function initialize() { 
     if (GBrowserIsCompatible()) { 
     var map = new GMap2(document.getElementById("map_canvas")); 
     map.setCenter(new GLatLng(37.4419, -122.1419), 13); 
     map.setUIToDefault(); 
     } 
    } 

    function view_map() { 
     if (GBrowserIsCompatible()) { 
     var map = new GMap2(document.getElementById("view_canvas")); 
     map.setCenter(new GLatLng(37.4419, -122.1419), 13); 
     map.setUIToDefault(); 
     } 
    } 
    </script> 
    <script language="javascript"> 
    function change_div(div_id) { 
     document.getElementById('div_1').style.display = 'none'; 
     document.getElementById('div_2').style.display = 'none'; 
     document.getElementById('div_3').style.display = 'none'; 
     //alert(div_id); 
     document.getElementById(div_id).style.display = 'block'; 
    } 
    </script> 
</head> 
<body> 
    <div align="center"> 
    <div align="left"> 
     <a href="javascript:void(0)" onclick="change_div('div_1')">Post Events</a> | 
     <a href="javascript:void(0)" onclick="change_div('div_2')">List Events</a> | 
     <a href="javascript:void(0)" onclick="change_div('div_3')">Map View</a> 
    </div> 
    <div align="left" id="div_1"> 
     <div id="map_canvas" style="width: 500px; height: 300px"></div> 
     <script language="javascript">initialize();</script> 
    </div> 
    <div align="left" id="div_2" style="display:none"> 
     List Events 
    </div> 
    <div align="left" id="div_3" style="display:none"> 
     <div id="view_canvas" style="width: 500px; height: 300px"></div> 
     <script language="javascript">view_map();</script> 
    </div> 
    </div> 
</body> 

</html> 
+0

它拖到一個角落,這是什麼意思 – david

+0

地圖沒有完全顯示在地圖上分配的空間。它縮小到一邊,我希望它顯示適合該空間。 – Neeraj

+0

你有沒有允許div的寬度/高度來容納地圖的大小 – david

回答

1

抱歉,我不真的知道,因爲你的API是舊版本,我沒有鑰匙,它dosnt工作,所有我可以建議有幾件事情

第一:放置view_canvas專區內的view_map();腳本塊

<div align="left" id="div_3" style="display:none"> 
    <div id="view_canvas" style="width: 500px; height: 300px"><script language="javascript">view_map();</script></div> 

</div> 

二的另一件事是你change_div()它的功能看起來有點大。

最後可能會更新到更新的Map API,您不需要它的密鑰,並且與舊版瀏覽器更向後兼容。

更新:

如果您在

<a href="javascript:void(0)" onclick="change_div('div_3');view_map();">Map View</a> 

放置例如view_map()並從div_3<script>view_map()</script>應正確顯示。

這兩個映射在啓動時初始化並且無法檢查調整大小。

+0

@Neeraj看到更新回答上面,並刪除你評論與你關鍵 – david

+0

@大衛..非常感謝你的傢伙..我得到它完全正確....再次感謝您... – Neeraj