1

意圖:谷歌地圖jQuery Mobile的雙彈出與我們聯繫頁

我有我想有,我們有不同的商店的列表單模板JQM頁面。

這是一個活生生的例子:http://bit.ly/WU7N1P

我想有彈出一個可重複使用的DIV容器,然後更新嵌套iframesrc,因爲用戶在一個位置或另一個挖掘。我的實現基礎來自jQM Google Map插件,並且已添加到它。

我創建被竊聽位置的經度和緯度的參數,然後將它傳遞在URLshowMap.html文件,該文件是iframesrc,並在谷歌地圖是在iframe裝載得到。我還在地圖上添加了一個標記,以便用戶可以看到商店的確切位置。


問題:

當用戶看來有一些得到加載兩(2)彈出窗口輕敲按鈕打開地圖嗎?所以,當你關閉地圖彈出窗口並保留第二個空白彈出窗口時,它也需要關閉。

注:大部分的時間,你可以重新創建的第一個「打開地圖」按鈕這個問題,但可能需要挖掘第二個不同,「開放圖譜」按鈕來重現問題

我已經完全堅持了幾個星期,希望有人能爲我解釋這個問題。

這是一個jsFiddle以及工作。 http://jsfiddle.net/hmQZk/3/


非常感謝你提前!

WizzyBoom

回答

1

你的問題是popupbeforeposition狀態和線路:

$('#popupMap iframe').attr('src', 'http://map.matchstickcrew.com/showMap.html?latlng=' + latlng); 

我已刪除了它,並把它放在裏面:

$('.btnShowMap').on('click', function() { 
    latlng = $(this).attr('data-latlng'); 
    $('#popupMap iframe').attr('src', 'http://map.matchstickcrew.com/showMap.html?latlng=' + latlng); 
}); 

這裏有一個工作示例:http://jsfiddle.net/Gajotres/hmQZk/5/

但是,如果您想聽取我的建議,則應放棄此iframe解決方案並切換至gMap v3 api。基本上你會得到同樣的東西,而不使用iframe作爲代理。

+0

我試過之前,當我在移動Safari上測試時遇到同樣的問題。所以我採納了你的建議並設置了一個gMap v3實現,但是現在我遇到了太多問題。 1)我似乎無法讓縮放變得不同。我正在拍攝「縮放」:12)2)當我點擊第一個「打開地圖」時,它顯示正常(儘管放大),但是當我點擊不同的「打開地圖」時,它並不令人耳目一新。我在我的腳本中找到了index.html文件的 http://map.matchstickcrew.com/(我無法讓jsFiddle使用插件和gMap API外部腳本調用)。有任何想法嗎? – WizzyBoom 2013-04-01 20:21:23

+0

我有一個工作的例子,看看:http://jsfiddle.net/Gajotres/7kGdE/。告訴我你是否需要更多東西。你是什​​麼意思「當我點擊一個不同的'開放地圖'」? – Gajotres 2013-04-01 20:56:23

+0

所以我的意思是'開放地圖'在http://map.matchstickcrew.com你會看到一個商店列表。點擊(點擊)'Store 1',然後點擊(點擊)'Open Map'按鈕。您會看到商店1在安納波利斯某處加載了一個標記(縮小以查看城市)。然後在商店3上點擊(點擊),然後點擊(點擊)「打開地圖」按鈕。我應該在波士頓地區的某個地方加載一個標記,但它只是加載之前留在安納波利斯視圖上的狀態。我怎樣才能讓每次刷新?另外,縮放並不清晰,您的版本將轉換爲我的版本。感謝您的幫助! – WizzyBoom 2013-04-02 00:25:02