a 中启用js的几种方式梳理及应用强烈推荐

大家常见的在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是1个实际操作符,void(0)回到undefined,详细地址不产生自动跳转。并且这类方式不容易像第1种方式1样立即将js方式曝露在访问器的情况栏。

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

这类方式跟跟2类型似,差别只是实行了1条空的js编码。

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

这类方式也是在网上很普遍的编码,#是标识内嵌的1个方式,意味着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;"