HTML代码:

<div id="header">header</div>
  <div id="sidebarWrap">
  <div id="sidebar">Sidebar</div>
</div>
<div id="main">Main</div>
<div id="footer">footer</div>

CSS代码:

<style>
body {
  margin: 10px auto;
  font-family: sans-serif;
  width: 500px;
}

div {
  border-radius: 5px;
  box-shadow: 1px 2px 5px rgba(0, 0, 0, 0.3);
  border: 1px solid #ccc;
  padding: 5px;
}

#sidebarWrap {
  height: 400px;
  width: 210px;
  float: right;
  position: relative;
  box-shadow: none;
  border: none;
  margin: 0;
  padding: 0;
}

#main {
  width: 270px;
  height: 4000px;
}

#footer {
  clear: both;
  margin: 10px 0;
}

#sidebar {
  width: 200px;
  height: 300px;
  position: absolute;
}

#header {
  height: 200px;
  margin-bottom: 10px;
}

#sidebar.fixed {
  position: fixed;
  top: 0;
}

#footer {
  height: 600px;
}

#footer {
  height: 600px;
}
</style>

学习平时的知识,只是近来学习一点点,测试博文发布到首页。学习平时的知识,只是近来学习一点点,测试博文发布到首页。学习平时的知识,只是近来学习一点点,测试博文发布到首页。学习平时的知识,只是近来学习一点点,测试博文发布到首页。学习平时的知识,只是近来学习一点点,测试博文发布到首页。学习平时的知识,只是近来学习一点点,测试博文发布到首页。学习平时的知识,只是近来学习一点点,测试博文发布到首页。
jQuery代码:

<script>
$(function() {
  var top = $('#sidebar').offset().top - parseFloat($('#sidebar').css('marginTop').replace(/auto/, 0));
  var footTop = $('#footer').offset().top - parseFloat($('#footer').css('marginTop').replace(/auto/, 0));

  var maxY = footTop - $('#sidebar').outerHeight();
			
  $(window).scroll(function(evt) {
    var y = $(this).scrollTop();
    if (y > top) {
      if (y < maxY) {
	$('#sidebar').addClass('fixed').removeAttr('style');
      } else {
	$('#sidebar').removeClass('fixed').css({
	  position: 'absolute',
	  top: (maxY - top) + 'px'
	});
      }
    } else {
      $('#sidebar').removeClass('fixed');
    }
  });
});
</script>

原文地址:http://www.cnblogs.com/songyan/p/16911538.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性