2

誰かが1つのファイルに複数のGoogleスクリプトをロードする方法を知っているのか、それとも可能であるのか、疑問に思っていました。一部のページで最大3つ以上のGoogleスクリプトを読み込んでいるためです。

  1. グーグルアナリティクス
  2. Google CSE
  3. グーグルマップ
  4. (たまに)Google Webfonts

HTTPリクエストを削減しようとしていて、それらすべてを含むgoogle.jsのようなものをロードできるようにしたいと考えています。

4

2 に答える 2

3

結合されたjsファイルを単一のhttpリクエストとしてGoogleからダウンロードすることはできませんが、十分な頻度で更新すれば(たとえば、1日2回のcronジョブなど)、独自のWebサイトをダウンロード、結合、およびロードできます。必要に応じて、キャッシュヘッダーを設定することもできます。

それにもかかわらず、私はそれを行うことに対してアドバイスします-それらのスクリプトを非同期でロードするだけです(ただし、個別のファイルではなく、html内から)-それは非ブロッキングであり、Webサイトのレンダリング開始を遅くしません。

于 2012-09-19T07:35:31.253 に答える
2

この例で行われているように、スクリプトを非同期でロードできます。load関数は、次のようなURLパラメーターを受け入れるように変更できます。

function loadScript(url) {
        var script = document.createElement('script');
        script.type = 'text/javascript';
        script.src = url;
        document.body.appendChild(script);
      }

その後:

var url =  'https://maps.googleapis.com/maps/api/js?sensor=false';
loadScript(url);

var url =  'https://www.somedomain.com/someScript.js';
loadScript(url);

// ...etc

次に、これらすべてを別のgoogle.jsファイルに入れることができます。ただし、必要に応じて一連のスクリプトをロードする方が簡単になる場合がありますが、これによってHTTPリクエストが削減されることはありません。

于 2012-09-19T07:24:12.233 に答える