2012-09-17 38 views
1

我有關於跨瀏覽器兼容性的問題。使用jquery中的event.target轉換event.srcElement

我想在以下代碼中使用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); 
    } 
} 
+1

這看起來不像我的jQuery。這不應該被標記爲*只是* JavaScript而不是?另外**它不工作**非常模糊。請幫助我們通過提供更多關於*什麼*完全不起作用的細節來幫助您。你看到控制檯中有任何錯誤嗎?你期望什麼行爲?你會得到什麼樣的行爲? – Matt

+0

您顯示的代碼不使用'target = event.target || event.srcElement'構造。如果你展示瞭如何使用它,而不是在沒有它的情況下顯示你的功能,它會有所幫助。 (你說的功能,如圖所示在IE中工作,但合併額外的線斷呢?) – nnnnnn

+0

看這裏:http://stackoverflow.com/questions/7457260/event-target-not-working-on-firefox –

回答

1

,如果你使用jQuery,只是用var $target = $(e.target); - 它會做正確的事的瀏覽器。