gpt4 book ai didi

javascript - 通过 AJAX 加载 Google Maps API,控制台错误

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:05:11 26 4
gpt4 key购买 nike

我正在使用 jquery/javascript、ajax 和 php 构建一个完全动态的网站。

当我单击导航链接时,浏览器会使用 ajax 打开该页面。

所以基本上所有页面都在同一个 index.php 中加载。

如果我转到“位置”选项卡,那里有一张谷歌地图,它将动态加载谷歌地图脚本(向正文添加脚本标签)。

<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3.exp&amp;callback=initialize"></script>

本脚本由上一个脚本自动加载

<script src="https://maps.gstatic.com/maps-api-v3/api/js/19/1/intl/hr_ALL/main.js"></script>

当我离开“位置”页面时,我会检查脚本是否存在并将其删除。

如果我在不刷新页面的情况下返回“位置”,我认为 map 会有一个干净的开始,但我在控制台中收到此错误:

You have included the Google Maps API multiple times on this page. This may cause unexpected errors.

即使之前删除了脚本,并且 map 和内容更改为其他内容,我仍然收到该错误。

因为我知道我只有一次 map 实例,我应该忽略它吗?

或者它确实对旧 map 有某种引用,删除这两个脚本是不够的。

感谢您提供任何信息!

最佳答案

删除脚本元素不会删除这些脚本创建的对象(基本上不会有任何影响)。

检查是否已经加载了 maps-API:

<script>
jQuery(function(){
if(!window.google||!window.google.maps){
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://maps.googleapis.com/maps/api/js?v=3&' +
'callback=initialize';
document.body.appendChild(script);
}
else{
initialize();
}});
</script>

关于javascript - 通过 AJAX 加载 Google Maps API,控制台错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27216159/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com