我知道如何显示infoWindow,但是从显示的按钮中捕获事件时遇到了问题。
$max-width
当我点击按钮时,我在调用methodB时说它没有定义时出错。我和我一起试过。方法B等......但那里没有运气。我该如何解决这个问题?
答案 0 :(得分:1)
这是一个JSFiddle,显示填充了DOM节点的InfoWindow,而不是HTML字符串。这样,我们可以使用jQuery向DOM添加编程事件,DOM可以访问当前范围,如图所示。
var $infoWindow = $('<div>Test popup<button>Click me</button></div>');
$infoWindow.find('button').click(_.bind(this.methodB, this));
me.showMapInfoWindow(marker, $infoWindow.get(0));
me.infoWindow.open(me.map, marker);
回答第一个问题
这是一个显示InfoWindow触发全局函数的JSFiddle。在这种情况下,我必须将函数设置为Window范围,但我相信这是由于JSFiddle环境。
window.myFunction = function() {
window.alert("function fired!");
}
...
var html = '<button onclick=\'myFunction()\'>Click me</button>';
如果您想调试范围,我建议使用debugger声明:
var html = '<button onclick=\'debugger;\'>Click me</button>';