首页 > 编程 > HTML > 正文

html中a标签href='#'与href='###'的区别分享

2020-03-24 17:30:20
字体:
来源:转载
供稿:网友
首先, a 标签 + #39;{jscode} 是很常用的一种 js 运用方式,而不使用 href= javascript:{jscode} 是为了兼容多种浏览器对 a 标签的解释和处理不同。其次,使用 a 标签 + #39;{jscode} 时经常会加一个 href= ### ,而有时这个 href= ### 会被误写为 a href= # 是因为使用者没有理解 # 和 ### 的区别。

简单地说,就是说如果想定义一个空的链接,又不跳转到页面头部,可以写href= ### 。详细解释就是 # 是有特定意义的,如果 # 后有内容会被认为是一个标签而从页面找到相应标签跳转到该处,找不到时会跳到页首, ### 其实就是一个无意义的标签指定,也就是一个 # 和不存在的标签 ## 的组合,页面中找不到命名为 ## 的 a 时该链接就不会发生跳转,也就不会导致执行 onclick 中的内容时突然发生页面跳到页首的问题。 ### 只是一种使用者习惯,如果你愿意,可以随便找一个跳转不到的标签作为命名。说白了 ### 就是一个不是锚点的字符串 浏览器找不到也不会跳到页首,原理就是依赖了网页的报错机制,找不到就不做处理。

有些人说,不喜欢“###”因为他会改变链接。都是使用一直用javascript:void(0)或者javascript:。href= javascript:void(0); 但也有人说用href= javascript:void(0); 可能会有浏览器兼容问题。在做页面时,如果想做一个链接点击后不做任何事情,或者响应点击而完成其他事情,可以设置其属性 href = # ,但是,这样会有一个问题,就是当页面有滚动条时,点击后会返回到页面顶端,用户体验不好。

javascript:void(0)这种伪协议,少写的好,如果你看过一些web标准的书就知道为什么了。 2.链接(href)直接使用javascript:void(0)在IE中可能会引起一些问题,比如:造成gif动画停止播放等,所以,最安全的办法还是使用“####”。为防止点击链接后跳转到页首,onclick事件return false即可。

以上就是html中a标签href='#'与href='###'的区别分享的详细内容,html教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表