簡體   English   中英

延遲加載Google Map API

[英]Lazy loading google map api

我想在主頁顯示后延遲加載所有第三方JS / CSS,因為當用戶從主頁導航到某個特定模塊時會使用外部插件等。

到目前為止,我已經成功將普通的.js和.css外部庫thanx轉換為http://wonko.com/post/lazyload-200-released

但是,對於像http://maps.google.com/maps/api/js?sensor=true這樣的路徑,此操作將失敗

碼:

   LazyLoad.js('http://maps.google.com/maps/api/js?sensor=true', function () {
   alert('Your JS has been loaded');
   });

我認為解決方案是如何延遲加載網址?

我相信您想要類似的東西:

$.getScript('http://maps.google.com/maps/api/js?sensor=true');

使用jQuery。 API將提供回調的詳細信息。 其他Google可能有某種機制要求它從負載中出現。 只是一個猜測。

找到了解決方案:檢查網址:“ http://maps.google.com/maps/api/js?sensor=true”,您會發現main.js正在被導入。 用於sensor = true的簡單getScript不會提供整個google對象,因此也需要下一次導入。

  var t=setTimeout(function(){
    jQuery.getScript('http://maps.google.com/maps/api/js?sensor=true');
    jQuery.getScript('http://maps.gstatic.com/intl/en_us/mapfiles/api-3/10/20/main.js');
  },1000);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM