我正在尝试制作一个div,使其在窗口滚动时黏在页脚上。我的代码几乎正确,但无法找出缺少了什么。
function checkOffset() {
var eTop = $('#footer').offset().top;
var chatTop = $('#chatArea').offset().top + $('#chat').innerHeight();
var zero = ($(window).innerHeight() + $(window).scrollTop());
var posFooter = eTop - zero;
var posChat = chatTop - zero;
if (posChat >= posFooter - 2) {
$('#chatArea').css('bottom', -posFooter);
} else {
$('#chatArea').css('bottom', 0);
}
console.log(posFooter);
}
$(document).scroll(function() {
checkOffset();
});
#wrapper {
height: 540px;
background-color: #ffffff;
}
#chatArea {
width: 100%;
position: fixed;
bottom: 0;
padding: 10px;
border: 1px solid red;
}
#footer {
background-color: #000000;
color: #ffffff;
padding: 20px;
border-top: 2px solid #007cdc;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="wrapper">
...
<div id="chatArea"></div>
</div>
<div id="footer"></div>
position:fixed; bottom: 0;
? - Christoph