2011-06-23 13 views
5

Nowość w JavaScript, naprawdę potrzebuję pomocy!Uzyskiwanie atrybutu href obrazu za pomocą Javascriptu

Teraz mam obrazu w stronie HTML, jak poniżej:

<a class="p" href="http://www.abc.com"><img src="http://www.abc.com/logo.jpg" alt="" /></a> 

i uzyskać element obrazu przez:

var e.document.elementFromPoint(x,y); 

Po kliknięciu na obrazek, można uzyskać SRC atrybutów lub przesunięcie atrybuty powodzeniem przez:

e.src or e.offsetHeight 

Jednakże zwraca NULL, gdy używam:

return e.href; 

Jak mogę uzyskać prawidłowy atrybut href (http://www.abc.com)?

Dzięki,

Szczyt

Odpowiedz

4

href nie jest propery obrazu, ale z elementem.

Możesz uzyskać do niego dostęp, korzystając z propozycją obrazu .parentNode. ponieważ jest to jego bezpośredni rodzic.

3

Można uzyskać węzeł nadrzędny img, która jest a użyciu parentNode:

return e.parentNode.href; 
+0

Great !! Działa, dziękuję. – PeakJi

1

href atrribute jest dostępny tylko na a i link elementów. Więc po prostu trzeba uzyskać węzeł nadrzędny z obrazka:

var thea=e.parentNode; 
if(thea.nodeName.toLowerCase()=="a"){ //If the tag is a hyperlink 
    return thea.href; 
}else{ 
    return ""; //Return an empty string if the image is not inside a hyperlink 
} 

Ad @ m