gpt4 book ai didi

javascript - map 总是返回未定义

转载 作者:行者123 更新时间:2023-11-28 05:47:08 26 4
gpt4 key购买 nike

每当用户单击某个 HTML 元素时,我一直尝试显示 Bing map ,但即使在设置 timeInterval 后,Microsoft.Maps.Map 也始终返回未定义,我还尝试使用 onscriptload onclick 事件插入新脚本。下面是我的示例代码。

$(document).ready(function(){

var script = document.createElement("script");
script.type = 'text/javascript';
script.src = 'https://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&onscriptload=getMap';

document.head.appendChild(script);

})


$("#showMap").click(function(){
getMap();

})
function getMap(){
console.info(Microsoft.Maps.Map);
var time = "";
var map
var mapControl = Microsoft.Maps.Map;
if(mapControl == undefined){
time = setInterval(function(){ getMap() }, 8000);
}
else{
map = new Microsoft.Maps.Map(document.getElementById('address1_composite'), {credentials: 'Cred'});
clearInterval(time);
}
}

抱歉,我知道这个问题已经在此链接中提出,Bing map is undefined after loading Javascript file

我们有相同的场景,但我的没有按预期工作,尽管我已经尝试了建议的答案。

最佳答案

您应该做的不是在单击元素时创建 map ,而是加载 map 一次,然后在单击按钮时隐藏/显示它。这将显着减少 map 加载数量,这意味着生成的交易更少,从而降低成本。

此外,不要像现在这样按需加载 map 脚本,而是使用 Bing Maps V8 控件并异步加载它: https://msdn.microsoft.com/en-us/library/mt712557.aspx

关于javascript - map 总是返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38410449/

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