首页 > 其他 > 详细

锚点的实现

时间:2017-01-11 07:56:56      阅读:184      评论:0      收藏:0      [点我收藏+]

最近工作遇到的问题,用vue写的,有一个锚点的效果,刚刚开始用的是锚点做的,效果做的不是很好,主要是因为,锚点切换,我不能监控锚点的变化,从而修改我的tab切换栏的样式。超级简单的问题,一时间没有想到,真郁闷

刚开始的时候,用offsetTop,但是滚动打的时候,offsetTop的值一直木有变化,我还以为是offsetTop我用错了,查了一些资料,才知道把这个属性理解错了。发现自己的思路也有些问题,后来就换了一种方法。以后记好了。

<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
  
    <title>锚点</title>
    <style>

    #container{
       width: 100%;
        height: 2000px;
      
    }
      #box1,#box2{
        width: 100%;
        height: 500px;
        background: green;
      }
      #box2{
        background: yellow;
      }
      #header{
        position: fixed;
        top:0px;
        width: 100%;
        height: 200px;
        border:1px solid red;
      }
    </style>
  </head>
  <body>
  <div id="header"><input type="button" id=‘handleClick‘ value=‘click‘></div>
    <div id="container">
      <div id="box1"></div>
      <div id="box2"> </div>
    </div>

 <script>
   document.getElementById(‘handleClick‘).onclick=function(){
      var box1 = document.getElementById(‘box1‘).offsetHeight;
      animation(box1);
   }

   function animation(target){
       var timer=setInterval(a,30);
        function a(){
          var speed =Math.ceil((target - document.body.scrollTop)/3);
           if(document.body.scrollTop >=  target){
              clearInterval(timer);
           }else{
           document.body.scrollTop =  document.body.scrollTop +  speed;
          }
       }
 }
 </script>
    
  </body>
</html>

  

锚点的实现

原文:http://www.cnblogs.com/xmhu/p/6272064.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!