文档章节

【转】IE6下<a href="#">与<a href="javascript:void(0);">的区别

hefeiuu
 hefeiuu
发布于 2017/05/04 20:29
字数 604
阅读 2
收藏 0

之前在项目,用到超链接,在ie下没有问题,但是到了ie6,居然发现点击事件不起作用, 真不可思议,以前都没注意到,后来网上搜了下,问题就出在这个void(0)上!现把网上的资料整理了下。 

Html代码   收藏代码
  1. <a href=”javaScript:void(0)” onClick=”doSomething();”>doSomethind</a>  


让我们先来看看JavaScript中void(0)的含义: 
JavaScript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值。 

void 操作符用法格式如下:

Html代码   收藏代码
  1. javascript:void (expression)  
  2. javascript:void expression  


expression是一个要计算的 JavaScript 标准的表达式。表达式外侧的圆括号是可选的,但是写上去是一个好习惯。我们可以使用 void 操作符指定超级链接。表达式会被计算但是不会在当前文档处装入任何内容。面的代码创建了一个超级链接,当用户点击以后不会发生任何事。当用户点击链接时,void(0) 计算为 0,但在 JavaScript 上没有任何效果。

Html代码   收藏代码
  1. <a href=”javascript:void(0)”>单击此处什么也不会发生</a>  


也就是说,要执行某些处理,但是不整体刷新页面的情况下,可以使用void(0),但是在需要对页面进行refresh的情况下,那就要仔细了。

Html代码   收藏代码
  1. <a href=”javascript:void(document.form.submit())”>  


其实我们可以用上面的代码,这句话会进行一次submit操作。那什么情况下用void(0)比较多呢,无刷新,当然是Ajax了,看一下Ajax的web页面的话,一般都会看到有很多的void(0),:D 所以在使用void(0)之前,最好先想一想,这个页面是否需要整体刷新。 


Html代码   收藏代码
  1. <script type="text/javascript">     
  2.     function goUrl(x){     
  3.         window.location.href=x;     
  4.     }     
  5. </script>     
  6.   
  7. <a href="javascript:;" onclick="javascript:goUrl('http://www.sina.com');">跳转1</a>  
  8.      
  9. <a href="javascript:void(0);" onclick="javascript:goUrl('http://www.sina.com');">跳转2</a>  
  10.      
  11. <a href="javascript:void(0);" onclick="javascript:goUrl('http://www.sina.com');return false;">跳转3</a>     
  12.   
  13. <a href="#" onclick="javascript:goUrl('http://www.sina.com');">跳转4</a>     
  14.   
  15. <a href="###" onclick="javascript:goUrl('http://www.sina.com');">跳转5</a>    


测试环境IE6,IE7,Firefox 3。 

跳转1和2在IE6环境下无效,3、4、5在IE6,IE7,Firefox3.01下测试均能 通过,。 

跳转4和5最简洁。 

关键在于<a>的href属性,空链接用"#","###"。 

为了不返回网页顶端。 

空链接推荐用"###"。

 

本文转载自:http://ufopw.iteye.com/blog/1063456

共有 人打赏支持
hefeiuu
粉丝 3
博文 64
码字总数 0
作品 0
合肥
a href=javascript:void(0)在ie6下可能会有问题

在购物页面的“立即购买”按钮是用a标签来做的,设置了href="javascript:void(0);",同时在a上面添加了onclick事件,目的是在点击之后处理Cookies并跳转到订单页面。反复测试发现 ie6下没有跳...

gaopeng8
2014/03/24
0
0
JAVASCRIPT_a href=#与 a href=javascript:void(0) 的区别

<a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP <a href="javascript:void(0)" onClick="window.open()"> 点击链接后,页面不动,只打开链接 <a href="#" onclick="javas......

喵王不瞌睡
2014/04/05
0
0
老生常谈:ie6下,a标签href设置javascript:void(0);后绑定的click失效

老生常谈:ie6下,a标签href设置javascript:void(0);后绑定的click事件,如果有form表单提交或跳转等事件,会失效!举例: <a id="id_back" href="javascript:void(0);" title="返回管理">返...

二分之一
2015/06/29
0
0
IE6下window.location.href 不能正常跳转

由于最近Chrome用的比较多,一般都是在用Chrome做测试,没遇到什么问题 最近项目上线,用IE6小小测试了下,问题来了。先看代码: <a href="javascript:void(0);" onclick="hrefSearchUser('$...

walala_Lee
2014/04/26
0
0
的一个小技巧

使用javascript的时候,通常我们会通过类似: <a href="#" onclick="javascript:方法">提交</a> 的方式,通过一个伪链接来调用javascript方法.这种方法有一个问题是:虽然点击该链接的时候不会跳...

wangwenya
2014/05/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

C++ std::function 和 std::bind

C++11提供了std::function和std::bind两个工具,用于引用可调用对象。这些可调用对象包括 普通函数,Lambda表达式,类的静态成员函数,非静态成员函数以及仿函数等。引用可调用对象,可以用于...

yepanl
44分钟前
1
0
python:可迭代对象的索引

关于 python的range的用法: 注意是[ 开始,结束)的半开区间,不包括结束 http://www.runoob.com/python/python-func-range.html import collectionsfrom collections import Iterable字符串......

Oh_really
58分钟前
2
0
docker-compose ,docker-stack

1.例子 version: "3"services: php: image: registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5 ports: - "38080:80" networks: - my_php_mysql volum......

chenbaojun
今天
3
0
SQL_Server2000示例数据库NorthWind的分析(转)

SQL_Server2000示例数据库NorthWind的分析 表名:Categories(食品类别表) 表结构: 字段名称 数据类型 长度 允许为空 CategoryID(主键) int 4 否 CategoryName nvarchar 15 否 Description ...

QQZZFT
今天
1
0
laravel 5.5 Session store not set on request.

laravel 5.5 数据存入session,会出现Session store not set on request.错误。查了下laravel 5.5将session放到global middleware中,需要laravel的文件 ./app/Http/Kernel.php中的加上一句:...

MichaelShu
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部