当我选择javascript元素时,页面跳转到顶部?

Jam*_*ham 1 jquery slidedown

有没有人知道为什么当选择其中一个bin时它会跳到顶部<div>?我已经尝试了一切,它只是不起作用(至少在Chrome中).

这是我的脚本:

<script>
 $(document).ready(function () {
        $("#bin1").click(function(){ 
           $("#div1").slideDown("1000"); 
           $("#div3").hide(); 
           $("#div2").hide();  
           $("#div4").hide();
        });
       $("#bin2").click(function(){ 
           $("#div2").slideDown("1000"); 
           $("#div3").hide(); 
           $("#div1").hide();  
           $("#div4").hide();
        });
      $("#bin3").click(function(){ 
          $("#div3").slideDown("1000"); 
           $("#div1").hide(); 
           $("#div2").hide();  
           $("#div4").hide();
       });
     $("#bin4").click(function(){ 
          $("#div4").slideDown("slow"); 
          $("#div3").hide(); 
          $("#div2").hide();  
          $("#div1").hide();

          return false;
      });
  });
 </script>
Run Code Online (Sandbox Code Playgroud)

这是HTML:

<div id="binheader" style="padding-top:20px;">
  <a href="javascript: return null;" id="bin1">
    <img src="img/black bin name.png"
    style="width:200px; float:left;" />
  </a>
  <a href="javascript: return null;" id="bin2">
    <img src="img/green bin name.png"
    style="padding-left:33px; width:200px; float:left;" />
  </a>
  <a href="javascript: return null;" id="bin3">
    <img src="img/yellow box name.png"
    style="padding-left: 34px; width:200px; float:left;" />
  </a>
  <a href="javascript: return null;" id="bin4">
    <img src="img/green box name.png"
    style="padding-left:33px; width:200px; float:left;" />
  </a>
</div>
Run Code Online (Sandbox Code Playgroud)

Šim*_*das 7

<a id="bin1" href="#"> 
Run Code Online (Sandbox Code Playgroud)

然后在点击处理程序中:

$('#bin1').click(function() {
    // do stuff
    return false;
}); 
Run Code Online (Sandbox Code Playgroud)

您的页面跳转到顶部,因为您的代码 - href="javascript: return null;"- 无法禁用锚点.不要将JavaScript代码放在href属性中!


考虑一下......

HTML:

<ul id="links">
    <li> <a href="#"> <img src="..."> </a> </li>
    <li> <a href="#"> <img src="..."> </a> </li>
    <li> <a href="#"> <img src="..."> </a> </li>
</ul>

<ul id="slides">
    <li> ... </li>
    <li> ... </li>
    <li> ... </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

$('#links a').click(function() {
   var i = $(this).parent().index();
   $('#slides').children().hide().eq(i).slideDown('slow');
});
Run Code Online (Sandbox Code Playgroud)

请注意,我将您的24行代码缩短为4行!