让a标签点击后不跳转可以设置成
1.<a href="javascript:void(0);" >javascript:void(0);</a>
2.<a href="javascript:;" >javascript:;</a>
3.<a href="" onclick="return false;">return false;</a> 这个会刷新页面
4.<a href="#" onclick="return false;">return false;</a> 这个会刷新页面
5.<a href="##" >##</a> 这个会刷新页面
6.<a href="####" >####</a> 这个会刷新页面
7.<a href="#all" >#all</a> 这个会刷新页面
如果想点击超链接调用js方法的话可以设置成
1.<a href="javascript:void(0)" onclick="jsFun()">jsFun</a>
2.<a href="#" onclick="jsFun();return false;">jsFun();return false;</a>
3.<a href="#" onclick="alert(1);event.returnValue=false;">alert(1);event.returnValue=false;</a>
1.javascript:void(0)不建议使用 (但我平时还是用这个比较多。。。)
2.链接(href)直接使用javascript:void(0)在IE中可能会引起一些问题,比如:造成gif动画停止播放等,所以,最安全的办法还 是使用“####”。为防止点击链接后跳转到页首,onclick事件return false即可,<a>这个标签的执行顺序应该是先执行onclick 的脚本,最后才进行href参数指定页面的跳转。在onclick中返回false,就可以中止<a>标签的工作流程,也就是不让页面跳转到href参数指定的页面。
3.如果仅仅是想鼠标移过,变成手形,可以使用
<span style="cursor:pointer" onclick="jsFun()">手型!</span>
4.阻止默认行为
在方法里一定要传参event,而且还要写完整!写e 或者不写,谷歌都可以,但是火狐,360,ie都不行,必须写完整!!!,但是IE还是不兼容,所以得这么写
function stopDefault(event) {
if ( event.preventDefault ){
event.preventDefault(); //支持DOM标准的浏览器
} else {
window.event.returnValue = false; //IE
}
这么写,就可以兼容ie(7+,6不知道),谷歌,火狐,360 了
event.isDefaultPrevented() 方法来检查指定的事件上是否调用了 preventDefault() 方法。
event.stopPropagation();//取消冒泡