如何传递参考"这个"关于href javascript函数?

时间:2012-03-14 12:32:01

标签: javascript

我有这个href的链接:

href="javascript:foo(this);"

当我称之为“this”指向窗口对象,而不是链接。如何传递对链接的引用?

http://jsfiddle.net/xMGKz/

编辑记事:问题是如何传递href,一般情况下不是 - 我知道onclick!

并且没有复制id和make getElementById,这不是“this”,它是DOM搜索某个元素,不需要在HTML中内联。

anwer是:不可能。

4 个答案:

答案 0 :(得分:20)

当你在href中使用“javascript:....”时,你将这个函数称为globaly。不在链接的上下文中。 您可以尝试:

<a href="#" onclick="foo(this); return false;">MyLink</a>

http://jsfiddle.net/xMGKz/1/

答案 1 :(得分:4)

主观上你会更适合像:

<a href="javascript:void(0)" id="myAnchor">My Link</a>

然后代码:

document.getElementById('myAnchor').onclick = function() {
    // this is the <a> in here
    return false; // optional, prevents href from executing at all 
};
这样一切都更加清晰。希望这有助于确认

答案 2 :(得分:4)

更好;

<a href="javascript:void(0)" onclick="alert(this.href);">Link</a>

答案 3 :(得分:0)

首先,在锚点中添加ID字段。

则...

使用标准Javascript:

<a id="someLink" href="javascript:foo(document.getElementById('someLink'));">

使用jQuery

<a id="someLink" href="javascript:foo($('#someLink'));">