Google maps google.maps.event.trigger
为了让谷歌地图正常工作而苦苦挣扎了数小时。单击第二个选项卡时,地图仅显示30%。它坏了。我正在使用事件触发器重新加载地图Google maps google.maps.event.trigger,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,为了让谷歌地图正常工作而苦苦挣扎了数小时。单击第二个选项卡时,地图仅显示30%。它坏了。我正在使用事件触发器重新加载地图 任何让我的地图完全显示的解决方案?????首先,我注意到有些地方说Demo.map,有些地方说Demo.map。请确保在整个代码中保持大小写一致,以避免任何错误。此外,您还可以将变量声明放在jQuery语句之前,以确保减少错误。看起来您的想法是正确的,但是您已经将map Demo.map命名,并且正在Demo.map上触发一个resize demo.map!==Demo.ma
任何让我的地图完全显示的解决方案?????首先,我注意到有些地方说Demo.map,有些地方说Demo.map。请确保在整个代码中保持大小写一致,以避免任何错误。此外,您还可以将变量声明放在jQuery语句之前,以确保减少错误。看起来您的想法是正确的,但是您已经将map Demo.map命名,并且正在Demo.map上触发一个resize 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({
show: function(e, ui) {
google.maps.event.trigger(Demo.map, "resize");
}
});
});
访问页面时打开JavaScript控制台-它会准确地告诉您问题所在。您没有找到属于已删除的if语句的}。是否修复了此问题?我找到了解决办法
$(function() {
$("#tabs").tabs({
show: function(e, ui) {
google.maps.event.trigger(Demo.map, "resize");
}
});
});