1

我对跨浏览器兼容性有疑问。

我想在下面的代码中使用event.target而不是event.srcElement使它适用于 Firefox。

我用过target = event.target || event.srcElement。它不工作。任何帮助将不胜感激。

function jumptoPopupMenuItem(theMenuID) 
{                
  if (event.srcElement.className == "RightClickMenuItems") 
  {
    if (event.srcElement.getAttribute("url") != null)
    {        
      var strParameters = "";                                    
      if (theMenuID == "mnuAppointmentMenu")
      {
        strParameters = "AppointmentNumber=" + m_strAppointmentTypeYearNumber;
      }
      else if (theMenuID == "mnuAvailableHourMenu")
      {
        strParameters = "PreFillLanguageID=" + m_nLanguageID;
        strParameters = strParameters + "&PreFillInterpreterID=" + m_nInterpreterID;
        strParameters = strParameters + "&PreFillDateOfService=" + m_dtDateOfService;
      }
      if (event.srcElement.getAttribute("target") != null)
      {
        var PopupWindow = window.open(
            event.srcElement.url + strParameters, 
            event.srcElement.getAttribute("target"));
        PopupWindow.focus();
      }
      else
      {
        window.location = event.srcElement.url;
      }
    }
    hidePopupMenu(theMenuID);
  }
}
4

1 回答 1

1

如果您使用的是 jquery,只需使用var $target = $(e.target);-- 它会为浏览器做正确的事情。

于 2012-09-18T05:58:18.410 回答