0

我正在尝试在http://www.kahuna-webstudio.fr/复制左侧导航。如果您查看http://www.kahuna-webstudio.fr/并向下滚动大约 50 像素左右,您会看到屏幕左侧出现一个 div,其中包含一些导航。感谢stackoverflow中的一些人的帮助,我已经完成了大部分工作。但是我没有工作的一部分是,当您向下滚动时,我的 div 内容(图像)不会保持静止不动(或始终可见)。

所以我想要发生的是:当 div 出现在屏幕左侧时,当用户向下滚动时,我希望 div 的内容始终出现在视图中。

现在我的工作是:通过 animate() 我将左侧导航 div 的高度设置为文档高度,宽度增长到 80 像素,然后是一些图像fadeIn()。但是页面相当长,当用户向下滚动时,他们也能够向下滚动我左侧导航 div 的高度;我总是希望我的左侧导航的内容总是出现在用户的视野中。

我认为这个人发布了一个类似的问题(始终在视图中保持标题),但我发现很难将 if 附加到我的示例代码中。任何人都可以帮忙吗?我很感激。

这是我的代码:

$(window).scroll(function(){
  var wintop = $(window).scrollTop();
  var docheight = $(document).height();
  var winheight = $(window).height();

  var newwidthgrow = 80;
  var smallheight = 0;
  var smallwidth = 0;


  if((wintop > 296)) {
    $("#slidebottom").stop().animate({height:docheight +"px"},'fast',function(){
      $("#slidebottom").stop().animate({width:newwidthgrow + "px"},'slow',function(){
        $("#slidebottomContents").fadeIn();
      });

    });
  }

  if((wintop < 25))
  { 
    $("#slidebottom").stop().animate({height:docheight +"px"},'fast',function(){

      $("#slidebottomContents").fadeOut(function(){
        $("#slidebottom").stop().animate({width:smallwidth + "px"});                                       
      });

    });

   }


});
4

1 回答 1

4

就我而言,这只能由 css 覆盖。要将 div 保持在同一位置,您可以应用以下 css:

CSS:

div id {
position: fixed;
left: 0px
width: 'your width'
}

position fixed 将 div 冻结在您想要的位置。left 将 div 保持在页面的左侧。

这能回答你的问题并解决你的问题吗?如果不让我知道!

于 2013-08-18T21:06:17.027 回答