Jquery 如何将位置更改为固定位置而不使用;“跳跃”;

Jquery 如何将位置更改为固定位置而不使用;“跳跃”;,jquery,Jquery,我正在试着把位置设置为固定在scoll上。我需要它发生在没有潜水艇的情况下 我创造了这把我想要的小提琴,但是没有了div,身体就被定位了 可能吗 我是javascript/jQuery新手 我希望你能理解我糟糕的英语 Morten Hauberg根据您的代码,当菜单位于可滚动区域内时,类非固定将应用一个位置:绝对。但是,当用户将浏览器视口滚动到可查看区域之外时,脚本会将css类添加到。Is添加了fixed类(应用位置:fixed)。删除not_fixed类,它将停止破坏滚动 <div i

我正在试着把位置设置为固定在scoll上。我需要它发生在没有潜水艇的情况下

我创造了这把我想要的小提琴,但是没有了div,身体就被定位了

可能吗

我是javascript/jQuery新手

我希望你能理解我糟糕的英语


Morten Hauberg

根据您的代码,当菜单位于可滚动区域内时,类
非固定
将应用一个
位置:绝对
。但是,当用户将浏览器视口滚动到可查看区域之外时,脚本会将css类添加到
。Is添加了
fixed
类(应用
位置:fixed
)。删除
not_fixed
类,它将停止破坏滚动

<div id="menu" class="not_fixed">
   <h1 id="show">MENU</h1>           
   <div class="hide" id="sub_menu" style="display: none;">
      TEKST<br>
      TEKST<br>
      TEKST<br>
      TEKST<br>
      TEKST<br>
      TEKST<br>
      TEKST<br>
   </div>     
</div>

菜单
TEKST
TEKST
TEKST
TEKST
TEKST
TEKST
TEKST

正如其他人所提到的,你的小提琴似乎在做你所要求的事情。在上面的评论中,当目标元素被修复时,您可能会对目标元素下面的内容产生问题。一个常见的问题是,当目标被修复时,下面的内容会跳转到目标之下

这里有一个提琴,它演示了一个标题,在滚动一段时间后,标题会被修复,而标题下的内容不会跳转到页面上。此外,此演示还显示,您可以将页眉设置为页面下方的“取消固定”,这样它就不会越过页脚

以下是演示中的用法:

// the limit is optional, but it will make the header move up the
// page again once it reaches the 7th paragraph
$(document).ready(function() {
    $('.header').scrollToFixed( { limit: $($('h2')[7]).offset().top } );
});
这是一把小提琴,它证明了这一点:


以下是jquery插件及其来源:

您的演示运行良好。不确定你想要它做什么,但它目前没有做。我不善于解释:)我希望div#sub#u菜单在加载页面时向下滚动。当你滚动时,它会在主体上向下滑动。这不是它已经在做的吗?向下滚动时,菜单在正文上滑动。我希望它在#正文之间滑动,以便#正文在页面上向下移动。也当你已经滚动。很抱歉解释得不好!我想你是想避免菜单把身体往下推。检查我下面的答案,看看这是否就是你想要的?现在,sub#u菜单一直在身体上向下滑动。我希望它向下滑动并“推动”身体向下移动。好的,正如其他人所说,这就是你的例子所做的。我看不出您当前的示例有任何问题。当您向下滚动定位更改时,正如我应该做的那样,但是#sub#u菜单会在#主体上向下滑动