我正在使用谷歌地圖api v3和jquery mobile。我有一個頁面,其中tab1顯示包含路線的地圖,tab2顯示路線詳細信息(setPanel)。當我爲響應調用setDirections時,一切都很好。地圖居中,縮放也是正確的。當我導航到細節並選擇替代路線並按Tab1返回到地圖以查看新路線時,縮放關閉。爲什麼會發生?我可以做些什麼來使它工作?選擇替代路線縮小縮放
回答
當地圖不顯示時指示被改變(到備用路線)時,它的大小錯誤(其大小在隱藏時報告給API)。顯示後需要觸發"resize" event on the map。
從文檔:
調整大小 - 開發人員應在地圖上觸發該事件時,在div更改大小:google.maps.event.trigger(地圖, '調整')。
更新: 看起來像directions_changed事件不會在地圖隱藏且未設置邊界時觸發。顯示地圖時手動設置界限似乎有效。
function refresh(map) {
google.maps.event.trigger(map, 'resize');
var routeIndex = globVars.directionsDisplay.getRouteIndex();
var routes = globVars.directionsDisplay.getDirections().routes;
globVars.map.fitBounds(routes[routeIndex].bounds);
alert('resize');
}
我認爲這種零大小的情況,但我無法確定。我確實觸發了resize事件(請參閱刷新)。當調整大小被觸發時,我添加了一個警報http://jsfiddle.net/bujar/LaYQJ/。還有什麼我失蹤或我必須手動做? – alkis
再次感謝你。如果我不太貪婪,你是否可以幫助我瞭解我的文章的第二部分?如果可以,請更新您的帖子,以便選擇它作爲答案並關閉主題(或者創建一個新主題更好嗎?)。 – alkis
我知道從現有格式中更改格式的唯一方法是自己構建邊欄(正如您已經爲自己回答的那樣)。爲其他選擇或想法創建一個新的話題會更好。 – geocodezip
- 1. JIT圖上的替代縮放選項
- 2. 在縮小/縮小地圖時禁用縮放/增加折線
- 3. MapView的替代捏放縮放
- 4. UIPinchGestureRecognizer縮放AVCaptureConnection;不縮小
- 5. 圖片瀏覽器(有縮放,平移,縮放等)?替代Three20
- 6. OpenGl 2d縮放(使用縮放和平移代替glOrtho)
- 7. ImageView縮放不放大或縮小
- 8. Flash AS3 - 在縮放和縮小時縮放播放器中的相機(縮放)
- 9. JS縮小:壓縮代碼
- 10. 我們可以通過縮放縮放的代碼縮小圖像嗎?
- 11. SVG.js縮放和直線移動路徑
- 12. 如何設置縮小放大和縮小放大縮小尺寸?
- 13. 平移和縮放的替代方案
- 14. 縮放大位圖替代方法
- 15. 縮小代碼
- 16. 縮放線段 - Java
- 17. 放大和縮小
- 18. Highstock - 最小縮放
- 19. 放大/縮小wx.Panel
- 20. UIPinchGestureRecognizer(縮小/放大)
- 21. QTableView放大/縮小
- 22. Jquery放大縮小
- 23. 高度限制縮放範圍縮小縮小
- 24. SCROLLVIEW最小縮放大小
- 25. 轉換後在Firefox中替換的選擇框:縮放()
- 26. 全屏縮放FitBounds縮小爲0
- 27. 多次縮放後圖像縮小
- 28. ViewController動畫像縮放和縮小
- 29. 縮放和縮放
- 30. knitRBootstrap:縮放選項,縮略圖大小和打印尺寸
代碼http://jsfiddle.net/bujar/LaYQJ/10/ 1.press按鈕 2.查看地圖 3.按路線 4.選擇第二路徑 5 。press map zoom is out – alkis
如果你想解析你自己的路由html,你可以從路線結果中爲點擊處理程序創建你自己的'panTo'代碼。路線上的每個點都在結果中提供了緯度/深度 – charlietfl
是的,我知道,但是我想知道是否有更簡單的方法來執行操作並保留已提供的功能。謝謝您的回答。 – alkis