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


Posted in Javascript onDecember 16, 2016

我们常用的在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跳转页面,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Prototype Array对象 学习
Jul 19 Javascript
JavaScript 题型问答有答案参考
Feb 17 Javascript
javascript中普通函数的使用介绍
Dec 19 Javascript
javascript 回调函数详解
Nov 11 Javascript
超实用的JavaScript代码段 附使用方法
May 22 Javascript
基于jQuery实现弹出可关闭遮罩提示框实例代码
Jul 18 Javascript
js事件冒泡、事件捕获和阻止默认事件详解
Aug 04 Javascript
jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法
Nov 23 Javascript
纯js实现图片匀速淡入淡出效果
Aug 22 Javascript
深入理解令牌认证机制(token)
Aug 22 Javascript
js实现旋转的星空效果
Nov 01 Javascript
JavaScript前端面试扁平数据转tree与tree数据扁平化
Jun 14 Javascript
概述jQuery中的ajax方法
Dec 16 #Javascript
JS数组排序方法实例分析
Dec 16 #Javascript
jquery UI Datepicker时间控件冲突问题解决
Dec 16 #Javascript
详解jQuery简单的表单应用
Dec 16 #Javascript
浅谈JavaScript的自动垃圾收集机制
Dec 15 #Javascript
简单三步实现报表页面集成天气
Dec 15 #Javascript
jQuery Validate让普通按钮触发表单验证的方法
Dec 15 #Javascript
You might like
音乐朗读剧《MARS RED》2021年TV动画化决定!
2020/03/06 日漫
php一个解析字符串排列数组的方法
2015/05/12 PHP
详解PHP原生DOM对象操作XML的方法
2016/10/17 PHP
捕获浏览器关闭、刷新事件不同情况下的处理方法
2013/06/02 Javascript
JavaScript 学习笔记之基础中的基础
2015/01/13 Javascript
jQuery实现鼠标滑过点击事件音效试听
2015/08/31 Javascript
jQuery用FormData实现文件上传的方法
2016/11/21 Javascript
jQuery中DOM节点的删除方法总结(超全面)
2017/01/22 Javascript
Vue用v-for给src属性赋值的方法
2018/03/03 Javascript
浅析vue中常见循环遍历指令的使用 v-for
2018/04/18 Javascript
新手简单了解vue
2019/05/29 Javascript
js笔试题-接收get请求参数
2019/06/15 Javascript
微信小程序实现点击按钮后修改颜色
2019/12/05 Javascript
[02:43]DOTA2英雄基础教程 半人马战行者
2014/01/13 DOTA
[51:36]EG vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
python reduce 函数使用详解
2017/12/05 Python
BP神经网络原理及Python实现代码
2018/12/18 Python
快速排序的四种python实现(推荐)
2019/04/03 Python
详解用python写网络爬虫-爬取新浪微博评论
2019/05/10 Python
python批量爬取下载抖音视频
2019/06/17 Python
从列表或字典创建Pandas的DataFrame对象的方法
2019/07/06 Python
Numpy之reshape()使用详解
2019/12/26 Python
谈谈Python:为什么类中的私有属性可以在外部赋值并访问
2020/03/05 Python
解决Python中报错TypeError: must be str, not bytes问题
2020/04/07 Python
python json.dumps() json.dump()的区别详解
2020/07/14 Python
Python实现Kerberos用户的增删改查操作
2020/12/14 Python
Omio意大利:全欧洲低价大巴、火车和航班搜索和比价
2017/12/02 全球购物
英国曼彻斯特宠物用品品牌:Bunty Pet Products
2019/07/27 全球购物
如何打开WebSphere远程debug
2014/10/10 面试题
规划编制实施方案
2014/03/15 职场文书
预备党员自我评价范文
2015/03/04 职场文书
2015年公务员工作总结
2015/04/24 职场文书
简爱电影观后感
2015/06/10 职场文书
安全生产培训心得体会
2016/01/18 职场文书
pandas 实现将NaN转换为None
2021/05/14 Python
世界十大动漫制作公司排行榜,迪士尼上榜,第二是美国代表性文化符
2022/03/18 欧美动漫