如果整个元素在视图中使元素位置:固定?

时间:2015-07-08 15:31:20

标签: javascript jquery

我遇到了这个代码,它点击警告点击整个元素是否在视图中。我希望沿着相同的线条创建一个侧边栏,当侧边栏处于全视图时,我需要它成为位置:固定到页面的底部,否则是位置​​:相对。 (减去点击时我只想在滚动时发生)。

Demo

我对JS不太满意,所以不确定我是否正在思考正确的路线?可以根据我的需要轻松调整这类事情。

$(document).click(function() {
   var win = $(window);
   var el = $('#tester');
   var winPos = win.scrollTop() + win.height();
   var elPos = el.offset().top + el.height();

   alert(winPos > elPos);
});

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

If you have function that shows the menu and another one that hides it, just use jQuery...

function show(){
  menu.show();
  menu.css("position", "fixed");
}
funtion hide(){
  menu.hide();
  menu.css("position", "relative");
}