亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Google Maps API v3 + jQuery UI選項卡存在問題

Google Maps API v3 + jQuery UI選項卡存在問題

桃花長相依 2019-11-11 14:56:44
使用Google Maps API在jQuery UI選項卡中呈現地圖時,存在許多似乎是眾所周知的問題。我已經看到有關類似問題的SO問題(例如,這里和這里),但那里的解決方案似乎僅適用于Maps API的v2。我檢查過的其他參考資料在這里和這里,以及我可以通過Googling挖掘的幾乎所有內容。我一直在嘗試將地圖(使用API的v3)填充到具有混合結果的jQuery標簽中。我正在使用所有內容的最新版本(當前為jQuery 1.3.2,jQuery UI 1.7.2,不了解Maps)。這是標記和javascript:<body>    <div id="dashtabs">        <span class="logout">            <a href="go away">Log out</a>        </span>        <!-- tabs -->        <ul class="dashtabNavigation">            <li><a href="#first_tab" >First</a></li>            <li><a href="#second_tab" >Second</a></li>            <li><a href="#map_tab" >Map</a></li>        </ul>        <!--  tab containers -->        <div id="first_tab">This is my first tab</div>        <div id="second_tab">This is my second tab</div>        <div id="map_tab">             <div id="map_canvas"></div>        </div>    </div></body>和$(document).ready(function() {    var map = null;    $('#dashtabs').tabs();    $('#dashtabs').bind('tabsshow', function(event, ui) {        if (ui.panel.id == 'map_tab' && !map)        {            map = initializeMap();            google.maps.event.trigger(map, 'resize');        }    });});這是我發現的/不起作用的內容(對于Maps API v3):使用jQuery UI Tabs文檔(以及我鏈接的兩個問題的答案)中所述的左偏技術根本不起作用。實際上,功能最佳的代碼.ui-tabs .ui-tabs-hide { display: none; }改為使用CSS 。使地圖完全顯示在選項卡中的唯一方法是將CSS的width和height設置#map_canvas為絕對值。將寬度和高度更改為auto或100%導致地圖根本不顯示,即使已經成功渲染(使用絕對寬度和高度)也是如此。我找不到它在Maps API之外的任何地方記錄,但map.checkResize()將無法再使用。相反,您必須通過調用觸發一個調整大小事件google.maps.event.trigger(map, 'resize')。如果未在綁定到tabsshow事件的函數內部初始化地圖,則地圖本身會正確呈現,但控件不會正確顯示-大多數只是明顯丟失。所以,這是我的問題:還有其他人有完成相同壯舉的經驗嗎?如果是這樣,由于記錄的技巧對Maps API v3不起作用,您如何找出實際可行的方法?如何根據jQuery UI文檔使用Ajax加載選項卡內容?我還沒有機會嘗試使用它,但是我猜想它將進一步打破Maps。使它正常工作的機會是什么(或者不值得嘗試)?如何使地圖填充盡可能大的區域?我希望它能填充選項卡并適應頁面大小調整,這與在maps.google.com上所做的方式大同小異。但是,就像我說的那樣,我似乎只限于將絕對寬度和高度CSS應用于地圖div。抱歉,如果您花了很長時間,但這可能是Maps API v3 + jQuery標簽的唯一文檔。干杯!
查看完整描述

3 回答

  • 3 回答
  • 0 關注
  • 665 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號