2011-10-25 4 views
0

URL에서 사용을 클릭 할 때 href 속성을 가져 오려고합니다.IE : 이벤트에서 객체 가져 오기

내가 함께 시도했다 : 이것은 크롬과 파이어 폭스에서 잘 작동하지만, IE에 문제가있다

var e = clickedElement || window.event; 
var t = e.target || e.srcElement; 
alert(t.href); 

; 그것의 오류 null을 제공합니다.

이벤트 객체에서 href를 가져 오는 방법은 무엇입니까?

+1

이 코드가 포함 된 함수를 보여주십시오. –

답변

0

이벤트 객체 인수 자리 표시 자 또는 this 인수 인 경우 clickedElement이 무엇인지에 따라 다릅니다. 당신이 이벤트에게 getEventTarget() 함수는 DOM 그래서 모든 이벤트에 대해 작동

function evtrigger(ev) { 
     alert(getEventTarget(ev).href); 
    } 

주를 실행할 때

function event_obj(event) { 
    if (!event) var event = window.event; 
    var element = event.target || event.srcElement; 
    alert(element.href); 
    return false; 
} 
function element_obj(element) { 
    alert(element.href) 
    return false; 
} 
. 
. 
<a href=".." onclick="return event_obj();">foo</a> 
<a href=".." onclick="return element_obj(this);">bar</a> 
0

이 기능을 사용

function getEventTarget(event) { 
    var targetElement = null; 
    try { 
     if (typeof event.target != "undefined") { 
      targetElement = event.target; 
     } 
     else { 
      targetElement = event.srcElement; 
     }    
    } catch (ex) { alert("getEventTarget failed: " + ex); } 
      return targetElement; 
    }; 

그런 다음 호출 이벤트 대상을 얻을 수 있습니다 반환 된 객체는 href를 얻는 것뿐만 아니라 원하는대로 조작 할 수 있습니다.

관련 문제