微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用鼠标滚轮和侧边栏更改Div Y位置

如何解决用鼠标滚轮和侧边栏更改Div Y位置

| 我需要在使用鼠标滚轮或侧栏向下或向上滚动时,我的div逐渐更改Y位置(例如,向上或向下50px)。我在Javascript / Jquery中需要这个。 我尝试使用此代码,但仅适用于向下滚动(“向下滚动和向上滚动”功能运行良好,只有动画部分无法正常工作): 更新:
 var sidebarScrollTop = 0;

    $(document).ready(function() {

    sidebarScrollTop = $(\"body\").offset();
    $(window).scroll(function () 
    { 
        var docScrollTop = $(\'body,html\').scrollTop();
        if(docScrollTop > sidebarScrollTop.top)
        {


        $(\"#legend\").stop().animate({ marginTop: \"+=50px\",},\'slow\',\"eaSEOutCirc\" );
        }
        else
        {
        $(\"#legend\").stop().animate({ marginTop: \"-=50px\",\"eaSEOutCirc\" );

        }
    });
    });

    $(window).resize(function() 
    {
    sidebarScrollTop = $(\"#legend\").offset().top;
    });

    $(document).resize(function() 
    {
    sidebarScrollTop = $(\"#legend\").offset().top;

});
谢谢     

解决方法

        您可以使用
$(window).scroll(function() {
   // Your scroll code here
});
每当用户在页面上滚动时都可以抓取。 接下来,您要更改
div
的y值。 如果将
div
定位为绝对值,则仅更改其最高值。
$(\'my-div\').top = original-top-value + $(window).pageYOffset;
    ,        我相信您需要保持div始终显示,即使用户向下滚动也是如此。如果是这种情况,则只能使用CSS来完成:
div {
  position: fixed;
  z-index: 100;
  top: 100px;
  left: 100px;
}
z-index,top和left的值是虚拟值。与您的人一起改变他们。 更新: 由于CSS解决方案对您不起作用,因此下面是JS中的示例工作:http://jsfiddle.net/qCtt5/     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。