• 避免使用<a href="#"的问题


    转自:http://zhanghong.iteye.com/blog/901466 

    很多人都有写这样代码的经历:

                      <a href="#" onclick="doSomething()">click me</a>

    其实这样写非常不好,因为页面虽然没有跳转,但是页面会回到顶端。如果在href中链接到一个锚点,eg: href="#bookmark" ,它就会调到<a href="bookmark">的地方。那么我们什么也不用,就不会有什么情况发生了吧,其实不然,这样会在浏览器浏览历史中新增一条记录。

       其实我们有几种解决空连接的方法:

    1. 用CSS

            

            .scripted-link {text-decoration:underline; cursor:pointer;}

            <span class="scripted-link" onclick="alert(better);">

    这样,一个空连接就出来了;

    2. 用javascript:void(0);

    <a href="javascript:void(0);" onclick="alert('better');" class="script-link">click me</a>

    这样页面也不会有任何跳转。

    3. 我们可以在href中使用任何funciton,不过记得最后一定要return false;

    如果你想你的链接不要有调转,你还可以吧href和onclick结合起来用,就是在href中使用javascript方法:

    <a href="javascript:doSomething()">click me</a>

    但是这个方法必须返回false或者void,不然的会,页面就会跳转到一个空页面,或者会显示这个方法返回的字符串。

    <a href="javascript:doSomething(); void(0);">click me</a>

    这样,这个链接既没有调转,又完成了操作。

  • 相关阅读:
    构建之法阅读笔记05
    构建之法阅读笔记04
    构建之法阅读笔记03
    学习进度条
    软件工程练习——买书
    软件工程练习——找水王2
    Java作业07
    Java课堂作业06
    读《大道至简》第六章有感
    Java课堂作业05
  • 原文地址:https://www.cnblogs.com/cheng07045406/p/3698143.html
Copyright © 2020-2023  润新知