在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 相关文章推荐
你所要知道JS(DHTML)中的一些技巧
Jan 09 Javascript
讨论javascript(一)工厂方式 js面象对象的定义方法
Dec 15 Javascript
解决JS浮点数运算出现Bug的方法
Mar 12 Javascript
javascript使用isNaN()函数判断变量是否为数字
Sep 21 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
Sep 29 Javascript
jquery实现带二级菜单的导航示例
Apr 28 Javascript
javascript作用域链(Scope Chain)用法实例解析
Nov 30 Javascript
Javascript自执行匿名函数(function() { })()的原理浅析
May 15 Javascript
自适应布局meta标签中viewport、content、width、initial-scale、minimum-scale、maximum-scale总结
Aug 18 Javascript
node中IO以及定时器优先级详解
May 10 Javascript
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
Aug 23 Javascript
React Fragment介绍与使用详解
Nov 11 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
邮箱正则表达式实现代码(针对php)
2013/06/21 PHP
解析如何修改phpmyadmin中的默认登陆超时时间
2013/06/25 PHP
php实现连接access数据库并转txt写入的方法
2017/02/08 PHP
JS定时器实例详细分析
2013/10/11 Javascript
jQuery CSS()方法改变现有的CSS样式表
2014/09/09 Javascript
JavaScript调用浏览器打印功能实例分析
2015/07/17 Javascript
js实现上传图片及时预览
2016/05/07 Javascript
js addDqmForPP给标签内属性值加上双引号的函数
2016/12/24 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
详解html-webpack-plugin插件(用法总结)
2018/09/12 Javascript
微信小程序实现下滑到底部自动翻页功能
2020/03/07 Javascript
微信小程序图片右边加两行文字的代码
2020/04/23 Javascript
Vue-cli assets SubDirectory及PublicPath区别详解
2020/08/18 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
2020/12/10 Vue.js
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
Pyramid将models.py文件的内容分布到多个文件的方法
2013/11/27 Python
编程语言Python的发展史
2014/09/26 Python
Linux中Python 环境软件包安装步骤
2016/03/31 Python
python 字符串转列表 list 出现\ufeff的解决方法
2017/06/22 Python
Python 和 JS 有哪些相同之处
2017/11/23 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
Python 实现数据结构-循环队列的操作方法
2019/07/17 Python
python单元测试框架pytest的使用示例
2020/10/07 Python
python读取excel数据并且画图的实现示例
2021/02/08 Python
中国海淘族值得信赖的海淘返利网站:55海淘
2017/01/16 全球购物
会计专业自我鉴定范文
2013/10/06 职场文书
文明礼仪事迹材料
2014/01/09 职场文书
医学生职业生涯规划书范文
2014/03/13 职场文书
爱护花草树木的标语
2014/06/11 职场文书
单位委托书怎么写
2014/09/21 职场文书
某集团股份有限公司委托书样本
2014/09/24 职场文书
合作合同协议书范本
2015/01/27 职场文书
故宫英文导游词
2015/01/31 职场文书
离职告别感言
2015/08/04 职场文书
党员干部学习心得体会
2016/01/23 职场文书
python实现简易名片管理系统
2021/04/11 Python