• 技术文章 >web前端 >js教程

    javascript:void(0)使用探讨_javascript技巧

    2016-05-16 17:24:24原创464
    在做页面时,如果想做一个链接点击后不做任何事情,或者响应点击而完成其他事情,可以设置其属性 href = "//m.sbmmt.com/m/article/#",但是,这样会有一个问题,就是当页面有滚动条时,点击后会返回到页面顶端,用户体验不好。

    目前有如下几种解决办法:
    1)点击链接后不做任何事情
    复制代码 代码如下:

    test
    test
    test //使用2个到4个#,见的大多是"//m.sbmmt.com/m/article/####",也有使用"#all"等其他的

    2)点击链接后,响应用户自定义的点击事件
    复制代码 代码如下:

    说明:
    1.javascript:void(0)这种伪协议,少写的好,如果你看过一些web标准的书就知道为什么了。(不懂,原话摘的,暂做记录)
    2.链接(href)直接使用javascript:void(0)在IE中可能会引起一些问题,比如:造成gif动画停止播放等,所以,最安全的办法还是使用“####”。为防止点击链接后跳转到页首,onclick事件return false即可。
    3.如果仅仅是想鼠标移过,变成手形,可以使用
    复制代码 代码如下:

    Click Me!

    void是javascript的操作符,意思是:只执行表达式,但没有返回值,
    void 操作符用法格式如下:
    复制代码 代码如下:

    javascript:void (expression)
    javascript:void expression

    为了程序风格良好,建议使用第二种带上括号的
    我们可以使用void操作符指定超级链接,如javascript:void(document.form.submit())。表达式会被计算但是不会在当前文档处装入任何内容,void(0)计算为0,但在JavaScript上没有任何效果,也就是说 的效果同的效果是一样的。
    关键是只要知道void是javascipt自身的操作符,它表示的是只执行表达式,但没有返回值!

    另外页面会自动调回顶端,是因为"//m.sbmmt.com/m/article/#"默认的瞄点位置是top,所以会出现这种情况。
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:js中onload与onunload的使用示例_javascript技巧 下一篇:jQuery快速上手:写jQuery与直接写JS的区别详细解析_jquery
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• 项目过大怎么办?如何合理拆分Angular项目?• 怎么使用pkg将Node.js项目打包为可执行文件?• 深入理解JavaScript内存管理和GC算法• 一文掌握JavaScript树结构深度优先算法• 聊聊Node.js中的多进程和多线程
    1/1

    PHP中文网