我想对“stackoverflow的问题”页面上的“如何格式化”做类似的操作。如何防止div离开屏幕?
本来div
有position:relative
。当div
的任何部分不在屏幕上时,它变成position:fixed
。
如何实现它?
编辑:更准确地说,我要的是:
在开始时,div
是Xpx从窗口的顶部。
当我向下滚动(X + Y)px时,通常会隐藏div
的顶部Ypx部分。
但我希望整个div
被固定在窗口的顶部。即{position:fixed; top:0}
如果向后滚动,div
将从窗口顶部返回到Xpx。
更多更确切的说,我要为这个更漂亮的代码:
$(document).ready(function()
{
var e = $('#myDiv');
var offsetTop = e.offset().top;
var positionTop = e.position().top;
$(window).scroll(function() {
if($(window).scrollTop() > offsetTop) {
e.css({'position' : 'fixed', 'top' : '0px'});
}
else {
e.css({'position': 'relative', 'top': positionTop});
}
});
});
我没有看到任何与不雅的代码,比其他的事实你可能想将两者连接起来'e.css'我们一起在'else'块,去掉不必要的'event'说法并修复部分格式。 **编辑**:我会发布一个答案。 – foxy