gpt4 book ai didi

javascript - 通过 jQuery 访问 Google map 变量

转载 作者:行者123 更新时间:2023-11-29 18:36:00 25 4
gpt4 key购买 nike

我怎样才能像这样加载谷歌地图:

function loadScript() {
var script = document.createElement("script");
script.setAttribute("src", "http://maps.google.com/maps?file=api&v=2.x&key=ABQIAAAAAXN1Nhid00zgr5mrYEM7MhQE7kuAsiuX3WD62vgNgdNYG4wQzhQs7fQD8XzGkuXLIejRfouX3li8xg&async=2&callback=loadMap");
script.setAttribute("type", "text/javascript");
document.documentElement.firstChild.appendChild(script);
}
function loadMap(){
var map = new GMap2(document.getElementById("google_map"));
}

$(document).ready(function(){
loadMap();
//How I can access the map variable here ?
});

并可以通过 jQuery 访问 map 变量?

我得到一个未定义的错误,因为在我尝试访问 map 变量时它还没有定义。

最佳答案

你不能这样。 map 在本地声明为 loadMap,您无法在该函数之外访问它。此外,您必须先执行 loadScript。顺便说一句,不要使用 setAttribute 来设置 srctype

改用在外部作用域(最好不是全局作用域)中声明的变量,例如

<script>
function loadScript() {
var script = document.createElement("script");
script.src = "http://maps.google.com/maps?file=api&v=2.x&key=ABQIAAAAAXN1Nhid00zgr5mrYEM7MhQ
script.type = "text/javascript";
document.documentElement.firstChild.appendChild(script);
}

loadScript();
</script>
<!-- close script element here to update DOM -->
<script>
var map; // declared outside loadMap

function loadMap(){
map = new GMap2(document.getElementById("google_map"));
}

$(document).ready(function(){
loadMap();
// Now map is available here
});
</script>

关于javascript - 通过 jQuery 访问 Google map 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3124678/

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