Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 固定横幅上的滚动页面与HTML和CSS_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 固定横幅上的滚动页面与HTML和CSS

Javascript 固定横幅上的滚动页面与HTML和CSS,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我需要创建一个横幅的占位符,它需要与页面一起向上滚动,直到它到达浏览器的顶部边缘,然后它应该固定在顶部。当页面向下滚动时,横幅也需要与页面一起再次滚动。我不确定我是否足够清楚,以便您可以在上看到示例。您会注意到,右侧列中的横幅的行为与我描述的一样 我没有JavaScript方面的经验,所以这只能通过HTML和CSS实现吗?活生生的例子: 您需要使用jQuery的scroll事件,然后将一个新类添加到标题中以修复它: jQuery //by default, the static menu i

我需要创建一个横幅的占位符,它需要与页面一起向上滚动,直到它到达浏览器的顶部边缘,然后它应该固定在顶部。当页面向下滚动时,横幅也需要与页面一起再次滚动。我不确定我是否足够清楚,以便您可以在上看到示例。您会注意到,右侧列中的横幅的行为与我描述的一样

我没有JavaScript方面的经验,所以这只能通过HTML和CSS实现吗?

活生生的例子:

您需要使用jQuery的
scroll
事件,然后将一个新类添加到标题中以修复它:

jQuery

  //by default, the static menu is hidden
  var showStaticMenuBar = false;

  //when scrolling...
  $(window).scroll(function () {

      //if the static menu is not yet visible...
      if (showStaticMenuBar == false) {
          //if I scroll more than 200px, I show it 
          if ($(window).scrollTop() >= 200) {
              //showing the static menu
              $('#header').addClass('fixed');

              showStaticMenuBar = true;
          }
      }
      //if the static menu is already visible...
      else {
          if ($(window).scrollTop() < 200) {
              $('#header').removeClass('fixed');

              //I define it as hidden
              showStaticMenuBar = false;
          }
      }
  });
活生生的例子:

是如何在CSS中设置要固定的位置。如果您想实现更多的行为,可以将它们定义为CSS类,当您需要更改行为时,只需使用jQuery添加和删除类。

posible dub of look here
#header{
    display:block;
    width: 100%;
    height:50px;
    background: #ddff00;
}
#header.fixed{
    position:fixed; 
    top: 0;  /*fixing it at the top*/
    z-index: 999;  /* over any other element*/
}