在JS中a标签加入单击事件屏蔽href跳转页面

发布时间 - 2026-01-10 21:52:07    点击率:

我们常用的在a标签中有点击事件:

1.

a href="JavaScript:js_method();"

这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且javascript:协议作为a的href属性的时候不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放。W3C标准不推荐在href里面执行javascript语句

2.

a href="javascript:void(0);" onclick="js_method()"

这种方法是很多网站最常用的方法,也是最周全的方法,onclick方法负责执行js函数,而void是一个操作符,void(0)返回undefined,地址不发生跳转。而且这种方法不会像第一种方法一样直接将js方法暴露在浏览器的状态栏。

3.

a href="javascript:;" onclick="js_method()"

这种方法跟跟2种类似,区别只是执行了一条空的js代码。

4.

a href="#" onclick="js_method()"

这种方法也是网上很常见的代码,#是标签内置的一个方法,代表top的作用。所以用这种方法点击后网页后返回到页面的最顶端。

5.

a href="#" onclick="js_method();return false;"

这种方法点击执行了js函数后return false,页面不发生跳转,执行后还是在页面的当前位置。

我看了下taobao的主页,他们采用的是第2种方法,而alibaba的主页是采用的第1种方法,和我们的区别是每个href里的javascript方法都用try、catch包围。

综合上述,在a中调用js函数最适当的方法推荐使用:

a href="javascript:void(0);" onclick="js_method()"
a href="javascript:;" onclick="js_method()"
a href="#" onclick="js_method();return false;"

解释:

javascript:是伪协议,表示url的内容通过javascript执行。 void(0)表示不作任何操作,这样会防止链接跳转到其他页面。 这么做往往是为了保留链接的样式,但不让链接执行实际操作,具体的操作交给链接的onclick事件处理.

以上所述是小编给大家介绍的在JS中a标签加入单击事件屏蔽href跳转页面,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# a标签href跳转  # js  # href  # 跳转  # angularjs项目的页面跳转如何实现(5种方法)  # Spring boot 跳转到jsp页面的实现方法  # Vue.js实战之利用vue-router实现跳转页面  # AngularJS之页面跳转Route实例代码  # AngularJS路由实现页面跳转实例  # ajax 提交数据到后台jsp页面及页面跳转问题  # JS中页面与页面之间超链接跳转中文乱码问题的解决办法  # JS实现页面内跳转的简单代码  # 这种方法  # 种方法  # 小编  # 的是  # 是一个  # 这是  # 是在  # 在此  # 中有  # 推荐使用  # 很容易  # 给大家  # 会使  # 这么做  # 不作  # 都用  # 所述  # 会像  # 给我留言 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: JavaScript如何实现路由_前端路由原理是什么  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  高性能网站服务器部署指南:稳定运行与安全配置优化方案  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全  如何在服务器上配置二级域名建站?  JavaScript模板引擎Template.js使用详解  Laravel如何创建自定义中间件?(Middleware代码示例)  如何快速登录WAP自助建站平台?  JS弹性运动实现方法分析  如何撰写建站申请书?关键要点有哪些?  浅谈redis在项目中的应用  如何选择可靠的免备案建站服务器?  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  Laravel PHP版本要求一览_Laravel各版本环境要求对照  Laravel怎么调用外部API_Laravel Http Client客户端使用  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  如何用搬瓦工VPS快速搭建个人网站?  如何在阿里云ECS服务器部署织梦CMS网站?  Laravel怎么判断请求类型_Laravel Request isMethod用法  香港服务器租用每月最低只需15元?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  如何快速查询域名建站关键信息?  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  深圳网站制作培训,深圳哪些招聘网站比较好?  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  如何快速建站并高效导出源代码?  如何确认建站备案号应放置的具体位置?  如何彻底卸载建站之星软件?  如何快速搭建高效服务器建站系统?  nodejs redis 发布订阅机制封装实现方法及实例代码  Laravel怎么实现模型属性的自动加密  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  Laravel如何使用Service Container和依赖注入?(代码示例)  JavaScript数据类型有哪些_如何准确判断一个变量的类型  如何快速上传建站程序避免常见错误?  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  WordPress 子目录安装中正确处理脚本路径的完整指南  Laravel项目怎么部署到Linux_Laravel Nginx配置详解  Python高阶函数应用_函数作为参数说明【指导】  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  如何在IIS服务器上快速部署高效网站?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  教学论文网站制作软件有哪些,写论文用什么软件 ?  Android实现代码画虚线边框背景效果