我知道jQuery标签和使用地图存在多个问题。 我已经看到了多个修复程序,我在那里中途。但我有一个最模糊的问题,并希望有人可能理解为什么。
这是我的标签代码
$("#contactTabs").tabs({ spinner: 'Loading <img src="../images/icons/ajax-loader.gif" />' });
$('#contactTabs').bind('tabsshow', function(event, ui) {
if (ui.panel.id == "Map") {
GetMap();
}
});
目前无效。 但是我正在进行一些测试,并在ALERT()中添加以查看“GetMap()”是否甚至试图加载...所以这是我测试过的代码,它运行得很好。
$("#contactTabs").tabs({ spinner: 'Loading <img src="../images/icons/ajax-loader.gif" />' });
$('#contactTabs').bind('tabsshow', function(event, ui) {
if (ui.panel.id == "Map") {
alert("load map");
GetMap();
}
});
所以我不知道为什么添加ALERT()导致地图加载并删除ALERT只是根本不加载地图。
有人可以就此问题向我提供任何澄清吗? 提前谢谢!
答案 0 :(得分:2)
尝试将GetMap()函数包装在以下内容中。
setTimeout(
function(){
GetMap();
}, 1000);
可能发生的事情是因为JavaScript异步执行大量代码,所以在实际完全加载数据之前调用了GetMap()。
该示例假定数据将在1秒内加载。但是,良好的做法是在调用GetMap()之前检查所请求的数据是否已完全加载。