在google maps infowindow对象中,我调用了showHotel()函数,但没有调用它。当我刚写的时候,alerert('')是有效的,但是我自己定义的函数不起作用。
function showHotel(){
alert('Wapal po');
}
var infowindow = new google.maps.InfoWindow({
content: '<a href="#" onclick="showHotel()">Show Tasweer</a>'
});
答案 0 :(得分:5)
您应该全局声明showHotel
。如果将事件侦听器添加到HTML字符串,则不会遵循当前作用域。您当前的代码可能如下所示:
window.onload = function(){ //Or any inner function
function showHotel() ... //This declares a local method
...
content: '<a ... onclick="showHotel()">'
...
}
将showHotel
方法泄漏到全局范围的方法是通过window.
为方法添加前缀:
window.showHotel = function(){...}