2016-12-28 6 views
0

У меня есть тег ссылки html, у которого есть атрибут «href», и я хочу получить доменное имя, нормально получить то, что я хочу, методом «хозяина», но то, что я нашел, очень странно, возьмите см. этот примерjavascript link analysis confusion

<a href="http://stackoverflow.com/questions/ask" id="test"></a> 

<script> 
x=document.getElementById("test"); 
alert(x.href.host+" , "+x.host); 
</script> 

OMG! в reusults является: - x.href.host: undefind - x.host:

stackoverflow.com

Я wounder почему JS рассматривают х как ссылку т.е. HREF значение, но оленья кожа рассматривать x.href значение как ссылку

https://facebook.com/Programmers-286474121390882/

ответ

1

Поскольку x.href является строка, и она не имеет свойство, называемое host.

Так попробуйте:

x=document.getElementById("test"); 
var host=x.getAttribute('href'); 
var pos=/:\/\//.test(host)?host.indexOf('/',7):host.indexOf('/'); 
host=host.substring(0,pos); 

это так. Хост будет храниться на переменной host.

+0

@Sherif Eldeeb, если это решило вашу проблему, сообщите мне –