努力使谷歌地图工作的时间。单击第二个选项卡时,地图仅显示 30%。它坏了。我正在使用事件触发器重新加载地图。
有什么解决方案可以让我的地图完全显示??????
努力使谷歌地图工作的时间。单击第二个选项卡时,地图仅显示 30%。它坏了。我正在使用事件触发器重新加载地图。
有什么解决方案可以让我的地图完全显示??????
首先我注意到你有一些地方说 Demo.map 和其他地方说 demo.map 确保在整个代码中保持一致的大小写以避免任何错误。您也可以在 jQuery 语句之前放置变量声明以确保更少的错误。
看起来您的想法是正确的,但是您已将地图命名为 Demo.Map 并且您正在触发 demo.map 上的调整大小。
demo.map !== Demo.map
编辑:对评论的回应
查看 jQuery UI 选项卡 API (http://api.jqueryui.com/tabs/#option-show) - 您应该调用的事件的名称是活动的,而不是显示,所以下面的代码:
$(function() {
$("#tabs").tabs({
show: function(e, ui) {
if (ui.index == -1) {
google.maps.event.trigger(Demo.map, "resize");
}
}
});
});
应该看起来像这样(去掉 if 语句 - resize 事件是轻量级的,如果在不必要时调用它也没关系):
$(function() {
$("#tabs").tabs({
activate: function(e, ui) {
google.maps.event.trigger(Demo.map, "resize");
}
});
});
试试这个朋友
$(function() {
$("#tabs").tabs({
show: function(e, ui) {
google.maps.event.trigger(Demo.map, "resize");
}
});
});