Javascript函数调用问题

javascript function call issue

本文关键字:问题 函数调用 Javascript      更新时间:2023-09-26

在google maps infowindow对象中,我调用了showHotel()函数,但它没有被调用。当我刚写alerert(")是工作,但我自己定义的函数没有工作。

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

您应该全局声明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(){...}