Jquery 滚动到顶部而不使用href。。。?

Jquery 滚动到顶部而不使用href。。。?,jquery,Jquery,这是我开始时的想法 $("a[href='#top']").click(function() { $("html, body").animate({ scrollTop: 0 }, "slow"); return false; }); 这对我很有用 <a href="#top">...</a> 但这对我来说不起作用 问题在于HTML,而不是JavaScript。HTML中有两个属性相同的id元素是无效的。当使用ID选择器时,jQuery

这是我开始时的想法

   $("a[href='#top']").click(function() {
      $("html, body").animate({ scrollTop: 0 }, "slow");
   return false;
    });
这对我很有用

<a href="#top">...</a>

但这对我来说不起作用

问题在于HTML,而不是JavaScript。HTML中有两个属性相同的
id
元素是无效的。当使用ID选择器时,jQuery(实际上是底层JavaScript)只会选择这些元素中的第一个,因此
#top
选择

出于这一点和许多其他原因,所有元素都必须具有唯一的ID


顺便说一下,
返回false对于
  • ,(对于

    定义“不工作”也不是必需的)。您执行了哪些调试?对我有效,您可以制作一个jsfiddle吗?是的,显示您的代码应该工作。不是在我这边,您有两个元素
    id=“top”
    在您的JSFIDLE中。删除第一个,您的JSFIDLE将在没有
    li#top
    的情况下工作。非常感谢您提供的非常有用的信息。
    <li id="top">....</li>
    
      $("#top").click(function() {
              $("html, body").animate({ scrollTop: 0 }, "slow");
              return false;
            });