在Firefox中,在onclick触发器中获取锚的href
In Firefox, get href of anchor in onclick trigger
使用以下html:
<div>
<a href='#link1' onclick='func()' >Link 1</a>
<a href='#link2' onclick='func()' >Link 2</a>
<a href='#link3' onclick='func()' >Link 3</a>
</div>
function func() {
var href = ??;
if( href.match(/#link1/) ) {
...
}
}
在Chrome(和IE?)中可以使用此代码
var href = window.event.target.href;
但是window.event
在Firefox 中不存在
如果事件是通过addEventListener
附加的,那么可以将e
作为参数,但在html中声明时,无法将事件传递给onclick
函数。
将this
传递给您的函数,然后直接访问href属性。this
将引用进行调用的元素。您可能还想返回false-这会阻止单击的链接进行导航。
http://jsfiddle.net/qjXVy/
function func(elem) {
alert(elem.href);
return false;
}
<div>
<a href="#link1" onclick="func(this)" >Link 1</a>
<a href="#link2" onclick="func(this)" >Link 2</a>
<a href="#link3" onclick="func(this)" >Link 3</a>
</div>
您确实在onclick处理程序本身中获得了作为参数的事件。所以你可以做:
<a href="#link1" onclick="func(event)" >Link 1</a>
然后您可以在func
中查看事件目标。
相关文章:
- 获取不带Jquery的嵌套父HREF节点
- 点击获取jQuery上的href属性
- 可以'当window.location.href时,无法从javascript获取post值
- 获取Href的集合
- 如何使用Javascript获取当前页面URL,并在<a href="[the_URL]”>
- 使用正则表达式获取特定的 href 值
- jQuery/js- 如何从基于 href 的类中获取菜单名称
- React路由器<link>如何在Jest测试中获取href的值
- 获取<a>href使用jQuery
- Jquery将href值获取到span应答器中
- JavaScript 获取要添加到锚标记中的 HREF 的页码
- 单击时获取 href 的顶部主机名
- 在IE 7中,如果链接是使用jQuery创建的,如何获取链接的href属性的文字值
- 从 JSON Href 获取在表中工作的按钮
- 从标记中的 href 获取查询字符串参数
- 通过 href 获取值的最佳方式
- Jquery - 如何从链接 href 获取页码并用作类
- 如何将数据从 href 获取到字符串并在之后使用它
- 当试图为href获取attr时获取#[object对象]
- anchor href获取当前url并使用javascript附加到下一页