标签a的空链接问题

偶然间发现,<a href="#">a1会跳跃吗?</a>,当页面上有滚动条的时候,点击就会跳到页面最上端,然后才知道原理,是因为,‘#’默认的锚点位置是top。

那可能会问,为什么有问题,,还要去用一个空的a标签呢,下面就是解释(摘录前辈的):

<a>标签增加href属性,就意味着以下事情:

  • :link选择器可以选择到它
  • 这个a标签可以获得焦点(可以通过tab+’回车‘按键访问到)

  • 在浏览器的默认样式表中,有href属性的<a>标签才有cursor:pointer的效果(尤其是在低版本的IE上)。

绑定了onclick事件的<a>标签,尤其是它的作用是ajax请求时,基本上我们就用不上这个标签的默认行为,也连接不到的实际页面,一般而言也会在CSS里给予了这个元素的cursor等样式。这时候还要加上href属性,是为了:

  • <a>够响应键盘事件并获得焦点(从而屏幕阅读器能够读出背后的内容,增强可访问性)
  • 优雅降级,在网络连接很差,还没有加载到CSS的时候,<a>依然有手型与正常的link样式。

1.<a href=“javascript:void(0);” >test1</a> 

2.<a href=“javascript:;” >test2</a> 

3.<a href="####" >test3</a> //一般用2-4个#

其中,1和2不会对地址栏造成影响,而3很明显会对地址栏有影响,最后推荐使用的是2,因为看过很多前辈的博客,“javascript:void(0);”。在某些情况下会有bug,javascript:void(0)   仅仅表示一个死链接。

因此,最后总结得到的结论就是,建议使用2号方案……

在脚本之家看到总结的不错,,继续增加一点内容:

就是。在点击链接后,响应用户自定义的点击事件:

<a href="#" onclick="doSomething();return false;">test4</a

<a href="#" onclick="alert();event.returnValue=false;">test5</a>









  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值