1
我一直试图显示必应地图,只要用户点击某个HTML元素,但Microsoft.Maps.Map总是返回未定义,即使设置了timeInterval后,我也尝试插入新的脚本onscriptload onclick事件。 以下是我的示例代码。地图总是返回undefined
$(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
我们有相同的情况,但如预期,虽然我已经尝试了建议答案矿井不能正常工作。
你在哪里测试你的代码?一个像jsfiddle这样的网站,在本地主机上,...?控制台中显示什么错误信息? –
我只通过控制台测试它,因为它连接到crm,它说Microsoft.Maps.Map是未定义的。 – user3197077
然后您需要检查您的浏览器的网络选项卡。我很确定脚本的加载是由于某种原因阻塞的。 –