javascript函数调用问题

时间:2011-11-12 10:52:44

标签: javascript

在google maps infowindow对象中,我调用了showHotel()函数,但没有调用它。当我刚写的时候,alerert('')是有效的,但是我自己定义的函数不起作用。

   function showHotel(){
       alert('Wapal po');
   }
   var infowindow = new google.maps.InfoWindow({
          content: '<a href="#" onclick="showHotel()">Show Tasweer</a>'
   });

1 个答案:

答案 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(){...}