2017-04-14 56 views
-2

我試圖讓代碼以正確的順序執行。我首先需要添加一些谷歌地圖代碼到DOM使用: $('body').append('<script defer src="https://maps.googleapis.com/maps/api/js?key=Y2E3g8n-jAT0gPXPuHr9mq8zj8uYSbV4&callback=createMap"></script>');等到<script>完成加載後再執行下一步

然後,我需要重新設置地圖的中心時,一個新的選擇從列表中進行: map.setCenter({lat: latitude, lng: longitude});

現在setCenter( )在我第一次運行它時不起作用,大概是因爲回調函數createMap()已經添加到了DOM,但腳本本身還沒有完成。在運行setCenter()之前,有什麼方法可以等待腳本完成執行?

+1

我們需要查看您嘗試使用的代碼。 – gforce301

+0

我在帖子中包含了相關的代碼。 ''('body')。append('');'是代碼這需要很長時間才能完成,'map.setCenter({lat:latitude,lng:longitude});'需要第一個代碼在執行前完成。 – user1317607

+0

沒有什麼與代碼相關的。具體而言,你不會向我們展示「createMap」回調函數。這是創建地圖的工作。 – gforce301

回答

0

回調createMap是「在運行setCenter()之前等待腳本完成執行」的地方。這就是回調的用途。在沒有向我們展示你想要做什麼以及如何做的實際代碼(而不是評論)的情況下,我們無法真正幫助你。

現在我明白如果你的代碼是如此超級祕密,你不能顯示給我們。在這種情況下,請重新閱讀以「不向我們顯示實際代碼」開頭的部分。

相關問題