这是我的情况。我在整个网站上有一些链接。其中一些看起来像这样:
<a target="_blank" onclick="someFunction()" href="/somFile.pdf">some file</a>
有些看起来像这样:
<a target="_blank" href="/somFile.pdf">some file</a>
单击时,所有链接都应调用 someFunction() 。在 onclick 属性中有调用的是旧的内容页面。较新的页面附加了一个 jQuery click 事件,如下所示:
$(document).ready(function(){
$('a[href$=".pdf"]').click(function() {
someFunction();
});
});
事情就是这样。我可以更新 someFunction(),但我无法触及实际的链接或 jQuery。我需要知道点击链接的 href 值。我尝试在 someFunction() 中使用以下内容:
var ev = window.event;
origEl = ev.target || ev.srcElement;
console.log(origEl.href);
但这不起作用。我也试过console.log(window.event)
但什么也没得到,说它是未定义的。知道我在这里缺少什么,或者在调用函数时如果不传递对它的引用基本上是不可能的吗?
编辑:需要明确的是,我不能作为短期甚至中期解决方案someFunction()
在 onclick 或黑色 jQuery 代码中编辑调用,因此我不能例如将它们更改为someFunction(this)
或类似的。我不确定是否可以从 someFunction() 中获取 href ,除非我这样做:(