2012-09-28 53 views
0

我正在構建依賴Google地球插件的頁面。該頁面使用require.js和主幹進行構建。我想在頁面的給定部分導航時初始化Google地球插件(例如,觸發了特定的骨幹路由)。在頁面加載後初始化Google地球插件導致空白頁面

但是,如果谷歌地球插件頁面加載後,頁面中的內容替換爲生成的腳本代碼的初始化(通過google.load('earth', '1');) - 例如爲:

<script src="https://www.google.com/uds/?file=earth&amp;v=1" type="text/javascript"></script> 
<script src="https://www.google.com/uds/api/earth/1.1/109c7b2bae7fe6cc34ea875176165d81/default.I.js" type="text/javascript"></script> 

和頁面消失。

有沒有辦法在頁面加載後初始化插件,還是我需要使用HEAD中的某些代碼來初始化事物,然後在我準備好顯示它時調用google.earth.createInstance

回答

0

而只是發表我終於找到了答案here後:

google.load(
    'earth', 
    '1', 
    { 
     'callback': function() 
     { 
      // what was in the google.setOnLoadCallback 
      // in the GE plugin examples 
     } 
    } 
); 

(假設你已經包含了<script>標籤指向https://www.google.com/jsapi)。通過將回調作爲第三個參數的一部分傳遞給google.load顯然會阻止它將腳本標記寫入文檔並覆蓋其中的任何內容!