javascript - Infowindow googlemaps点击事件给出错误

标签 javascript sencha-touch-2 sencha-architect

我在向标记添加信息窗口时遇到了问题。虽然它们看起来都很好,如果我点击它们,窗口就会出现,我似乎遇到了一个错误,我不知道它想要什么。

问题在于,当我单击标记时,会出现包含所有信息的窗口。我收到一个:“Uncaught TypeError: Object [object Object] has no method 'N'” 错误,在 main.js 中,这是由 Sencha Architect 本身生成的。

它显示信息,但我仍然可以打开多个屏幕,但关闭屏幕不起作用,这当然是我想要的,因为我不明白为什么 150 个不同的标记应该全部显示内容屏幕,如果我无法关闭它们。

我的创建标记函数的代码如下(请注意,他在循环中运行以创建 150 个标记)

var infoWindow;

// Creating a marker
var title = data.stembureau_2;
var yay = map.getMap();
var icon = 'markers/SGA.png';
var gpa = data.gpa;

if (gpa == 'Ja'){
     icon = 'markers/GPA.png';
}

var marker = new google.maps.Marker({
     position: new google.maps.LatLng(data.latitude, data.longitude),
     map:      yay,
     title:    title,
     icon: icon
});

// Creating an InfoWindow object
var content = data.stembureau_1;
infoWindow = new google.maps.InfoWindow({
      content: content
});

// Loading the Infowindow on a click event
google.maps.event.addListener(marker, "click", function() {
    infoWindow.open(map, this);                  
});

// Closing the Infowindow on a click event
closeInfoWindow = function() {
     infoWindow.close();
};
google.maps.event.addListener(map, 'click', closeInfoWindow);

return marker;

最佳答案

已经修复了,非常简单。我之前将 yay 称为 map 对象,但我没有提到。我的小错误是我经常过度阅读!不管怎样,谢谢你。

关于javascript - Infowindow googlemaps点击事件给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12246084/

相关文章:

javascript - 代码无法在顶部使用 <!DOCTYPE html>

Javascript 协议(protocol)和事件

javascript - 在 Android 和 iPhone 的 JS 链接标签上触发点击事件

javascript - Ext JS grid 获取最后选定行的 dom

javascript - 如何在 Extjs 中打破多行的长标签

javascript - 无法将 FabricJS svg 或组对象移动到 Canvas 左上角

javascript - 无法读取未定义的属性 '0' -- JavaScript

extjs - 如何在选项卡面板中获取事件选项卡索引?

javascript - 如果没有 setTimeout,css 转换将无法运行

javascript - Sencha Architect 自动创建 ViewModel 和 View Controller