Jump to content
  • 0

Получить href при клике на линк


SFproG
 Share

Question

Как получить значение текущего href при нажатии на линк с этим атрибутом?

Делаю, типа, что-то такого:


<a href="img.jpg" onclick="lnk(); return false;">Link</a>

<script type="text/javascript">
function lnk() {var l = this.href; alert(l)}
</script>

Ни чего не выходит.

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

в js не особо силен, но вот какие мысли имеются:

1) для начала нужно пройтись по dom и получить то что нам нужно, это либо document.GetElementsByTagName или document.getElementById. но и в первом и втором случае мы получим значение только после прохода ветви dom, а значит js нужно будет вставить где-то после html кода.

2) нужно указать событие, по которому будет отлавливаться сценарий, это может быть onclick, а если ссылок много, то это дело обернуть в цикл.

Link to comment
Share on other sites

  • 0

Как получить значение текущего href при нажатии на линк с этим атрибутом?

Делаю, типа, что-то такого:


<a href="img.jpg" onclick="lnk(); return false;">Link</a>

<script type="text/javascript">
function lnk() {var l = this.href; alert(l)}
</script>

Ни чего не выходит.

Если событие прописываем в теге то проще так:


<a href="img.jpg" onclick="lnk(this); return false;">Link</a>

<script type="text/javascript">
function lnk(el) {alert(el.href)}
</script>

Если событие прописывать отдельно и для не определенного количества тегов, то можно либо так:


document.body.onclick = function(e) {
if(e.target.tagName == "A"){
alert( e.target.href );
}
return false;
}

либо так


var a = document.getElementsByTagName("A");
for(var i = 0; i < a.length; i++){
a[i].onclick = function(e) {
alert( this.href );
return false;
}
}

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy