我想對「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