HTML5履歴APIを使用してページ情報をナビゲートおよびリロードするサイトがあります。これにより、関連するページ情報を取得するAJAX呼び出しが送信されます。私の「連絡先」ページには、グーグルマップのAPIスクリプトがあります。URLにアクセスしてページをロードすると、正常に機能します。GoogleはmapsAPIを読み込み、bodyタグを閉じる前にそれを含めます。
ページから移動して(履歴APIを使用してコンテンツを削除および追加)、連絡先ページに戻ると(再び履歴APIを介して)、(すでに含まれている)マップAPIが2回呼び出され、2倍になります。 。これにより、コンソールに警告メッセージが表示されます。
新しいコンテンツが読み込まれる前に、bodyを閉じるタグの前に追加されたGoogle Mapsスクリプトを削除しようとしましたが、スクリプトが解析されたため、マップに関連するすべての関数がブラウザのメモリに残ります。
だから私の質問は、「ページコンテンツのAJAXリクエストを行うときにすべてのグーグルマップJSをアンロードする方法はありますか?」ということだと思います。
コンソールメッセージは次のとおりです。
警告:このページにGoogleMapsAPIを複数回含めています。これにより、予期しないエラーが発生する可能性があります。