`

妙用javascript:void(0)

阅读更多
在开发过程中经常使用<a href="#"/>,可是在点击这个链接的时候,总是跳到页面的顶端,如果滚动条很长的话,并且已经阅览的页面底部的时候,给用户带来很大的困扰。

为什么会出现这种情况呢,查阅资料发现,#代表一个锚点,并且这个锚点是在页面的顶部,所以每次点击这个链接都会跳到页面顶部。

如果我们不想让页面跳动的话可以使用javascript:void(0)代替#,页面就不会发生跳动了。增强了用户的体验度。
分享到:
评论
21 楼 Shrek82 2010-01-20  
有个很重要的地方,表现不同:

1、<a href="#" onclick="alert()">click me</a>
2、<a href="javascript:void(0)" onclick="alert()"></a>

第1个,在IE6(IE8没有哪个地球了)下点击链接,弹出对话框没有按确定的时候,你就会发现IE工具栏上面的那个小地球在旋转,说明IE还在发送一个请求。。。

第2个,在IE6下,发现地球是静止不动的,仅仅是执行一个本地的动作。

很久之前的测试了,大家可以测试下。

20 楼 aninfeel 2010-01-20  
一般都用#加return false,javascript:void(0)写起来太麻烦了
19 楼 lifesinger 2010-01-20  
曾经总结过:

链接A引发的思考:http://lifesinger.org/blog/2008/12/think-about-link-a/
18 楼 happysoul 2010-01-20  
一定要用到A标签么?
使用样式 cursor:pointer;
即使是一个div
<div style="cursor:pointer;">111</div>
也是可以实现鼠标放上去变成一只手
进阶
<style>
.hover{font-width:blod;}
</style>
<div style="cursor:pointer;" onmouseover="this.className='hover'" onmouseout="this.class=''">111</div>

我们的目的只是为了让a用起来像个Button而已
17 楼 yhailj 2010-01-18  
为了保证不与 onclick 中定义的 javascript 冲突.
建议不使用 href="javascritp:;" 通常都是使用 href="###" . 页面也不会动
16 楼 eplang 2010-01-18  
hq2300 写道
我觉得用javascript:void(0)没任何意义,如果是要代替<a href='#'></a>,不如直接写<a></a>,既然用不上链接地址,又何须加href,如果碰到页面里设置了<base target="_blank" />,有href的空链接一样会起作用。


<a></a>这种方式压根没有链接效果.
没有href属性的话就只是显示标签里面的文本.
15 楼 hq2300 2010-01-18  
我觉得用javascript:void(0)没任何意义,如果是要代替<a href='#'></a>,不如直接写<a></a>,既然用不上链接地址,又何须加href,如果碰到页面里设置了<base target="_blank" />,有href的空链接一样会起作用。
14 楼 soni 2010-01-18  
js能省就省了。
13 楼 sunhj000java 2010-01-18  
MrLee23 写道
<a href="#" onclick="a();return false;">什么问题都解决了,包括浏览器不兼容问题</a>


但是我就没办法不是要麻烦一点的嘛,
12 楼 MrLee23 2010-01-18  
<a href="#" onclick="a();return false;">什么问题都解决了,包括浏览器不兼容问题</a>
11 楼 coca 2010-01-17  
也可以用:javascript:undefind;
10 楼 black.angel 2010-01-17  
wiwiluo 写道
写成这样也是可以的
javascript:;


我一直都用这个写法.
9 楼 snowing11812 2010-01-17  
我一般都用下面几种:
1.href="javascript:void(0);"
2.href="javascript:;"
3.href="#all"
4.href="####"

目前最多用第2种,只是目前还没有详细研究区别,只是为了实现“点击后不要什么反应”的目的
8 楼 bazhuang 2010-01-17  
关于这个问题,我专门写了一篇博客,感兴趣的可以看看,会有更好的方案
http://bazhuang.iteye.com/blog/548381
7 楼 rjzou2006 2010-01-16  
用三个#
或者四个#

都行。
6 楼 wiwiluo 2010-01-16  
写成这样也是可以的
javascript:;
5 楼 鹤惊昆仑 2010-01-16  
href="javascript:void(0);" 事实上void可以里面可以是任意值(表达式、函数等),但如果不幸写成href="javascript:void();",在IE下面就报错了;可恶的是如果不知道这个错误,它还很难跟踪定位,容易糊弄人。
4 楼 sunhj000java 2010-01-16  
coofucoo 写道
sunhj000java 写道


如果我们不想让页面跳动的话可以使用javascript:void(0)代替#,页面就不会发生跳动了。增强了用户的体验度。


会不会对搜索引擎不友好?



应该不会吧,它起到的是一个锚点的作用撒
3 楼 sunhj000java 2010-01-16  
fnet 写道
sunhj000java 写道
在开发过程中经常使用<a href="#"/>,可是在点击这个链接的时候,总是跳到页面的顶端,如果滚动条很长的话,并且已经阅览的页面底部的时候,给用户带来很大的困扰。

为什么会出现这种情况呢,查阅资料发现,#代表一个锚点,并且这个锚点是在页面的顶部,所以每次点击这个链接都会跳到页面顶部。

如果我们不想让页面跳动的话可以使用javascript:void(0)代替#,页面就不会发生跳动了。增强了用户的体验度。

# 也可以,你只需要 onclick="return false" 即可。
javascript:void(0) 在有的浏览器会有问题。

浏览器问题还没有测试过呢,我是要用onclick事件的,是href=javascript:void(0)
2 楼 coofucoo 2010-01-16  
sunhj000java 写道


如果我们不想让页面跳动的话可以使用javascript:void(0)代替#,页面就不会发生跳动了。增强了用户的体验度。


会不会对搜索引擎不友好?


相关推荐

    javascript:void(0);

    以上是关于“javascript:void(0)”这一描述中涉及的多个知识点,它们涵盖了活动策划、组织、宣传、评估、资源管理等多个方面,对于任何想要在工作中提升活动策划能力的人来说,都是非常宝贵的经验。

    JS动态加载以及JavaScriptvoid(0)的爬虫解决方案.docx

    然而,这种技术也给网络爬虫带来了新的挑战,尤其是当网站使用`JavaScriptvoid(0)`的方式来隐藏实际的资源链接时。本文将详细介绍如何解决这一问题,并以36Kr网站为例,演示具体的爬取过程。 #### 二、JS动态加载...

    javascript-void(0)是什么意思?JS的几种跳转.docx

    在探讨`javascript:void(0)`的具体含义之前,我们首先需要理解`void`操作符的基本概念。`void`是一个JavaScript操作符,用于指定计算一个表达式但不返回任何值。换句话说,`void`操作符的作用主要是执行表达式,并将...

    swot分析法javascript:void(0);

    去玩得起我的期望的委屈的期望短期我对得起我的缺点我去打球的委屈的

    JavaScript中void(0)的具体含义解释

    &lt;A HREF="javascript:void(0)"&gt;单击此处什么也不会发生 在上面的例子中,void(0) 计算为 0,但是不会在当前文档处装入任何内容。因此,当用户点击链接时,什么也不会发生。 void 操作符也可以用于提交表单,例如:...

    空链接 href="#"与href="javascript-void(0)"的区别.docx

    如果仅仅是希望链接触发一个JavaScript函数,同时不改变当前页面的位置,则推荐使用 `href="javascript:void(0)"`;如果链接本身就需要滚动到页面顶部或某个特定位置,则可以使用 `href="#"`。 - **兼容性考虑**:...

    [JavaScript权威指南(第6版)].(JavaScript:The.Definitive.Guide).David.Flanagan.文字版.pdf

    - **字符串(String)**: 可以用单引号或双引号包裹,ES6之后还可以使用反引号(``),支持模板字符串。 - **布尔值(Boolean)**: 有两个可能的值——`true` 和 `false`。 - **对象(Object)**: 是一种复合数据类型,可以...

    Effective JavaScript: 68 Specific Ways to Harness the Power of JavaScript[EPUB版]

    Author David Herman, with his years of experience on Ecma’s JavaScript standardization committee, illuminates the language’s inner workings as never before—helping you take full advantage of ...

    JavaScript权威指南(第6版).JavaScript:The.Definitive.Guide

    中文名: JavaScript权威指南 (第6版) 原名: JavaScript: The Definitive Guide: Activate Your Web Pages, 6th edition 作者: David Flanagan 版本: 英文文字版-pdf/EPUB + 完整书中源代码 出版社: O'Reilly 书号: ...

    比较详细的关于javascript中void(0)的具体含义解释

     (实现版本 Navigator 3.0 ) 你可以使用 void 操作符指定超级链接。表达式会被计算但是不会在当前文档处装入任何内容。 下面的代码创建了一个超级链接,当用户点击以后不会发生任何事。当用户点击链接时,void...

    详解javascript void(0)

    - **`void(0)`**:`javascript:void(0)`在链接中使用时,阻止了默认的链接行为。点击这样的链接,浏览器不会尝试导航到任何URL,而是执行`void(0)`表达式,保持当前页面状态不变。 - **链接到ID**:相比之下,如果...

    jquery 仿QQ相册

    &lt;li&gt;&lt;a title="" href="javascript:void(0);"&gt;&lt;img alt="" src="pics/1.jpg"&gt;&lt;/a&gt; &lt;li&gt;&lt;a title="" href="javascript:void(0);"&gt;&lt;img alt="" src="pics/2.jpg"&gt;&lt;/a&gt; &lt;li&gt;&lt;a title="" href=...

    JavaScript权威指南(英文版) JavaScript: The Definitive Guide, 5th Edition

    This Fifth Edition is completely revised and expanded to cover JavaScript as it is used in today's Web 2.0 applications. This book is both an example-driven programmer's guide and a keep-on-your-desk ...

    设为主页跳转代码大全

    3. **需要阻止链接默认行为时**:可以考虑使用`&lt;a href="javascript:void(0);" onclick="javascript:goUrl('http://www.sina.com'); return false;"&gt;`的方式。 ### 四、注意事项 1. **避免过度使用JavaScript**: ...

    [removed]void(0)是什么意思及href=#与href=javascriptvoid(0)的区别

    当我们使用`javascript:void(0)`或`javascript:void null`作为超链接的`href`属性时,点击链接将不会有任何实际的导航发生。例如: ```html &lt;a href="javascript:void(0)"&gt;不跳转链接 ``` 在这个例子中,点击链接...

    JavaScript:JavaScript基础语法.docx

    JavaScript:JavaScript基础语法.docx

    [removed]void(0)的问题使用探讨

    然而,有些开发者认为使用`javascript:void(0)`并不是最佳实践,因为它涉及到内联JavaScript,这可能会影响代码的可维护性和可读性。另外,在某些情况下,`javascript:void(0)`在Internet Explorer中可能会导致一些...

Global site tag (gtag.js) - Google Analytics