ウィンドウの相対的な位置を固定する例がたくさんありました。ウィンドウの下部から要素Xピクセルを固定するにはどうすればよいですか?単純に上からJQueryを使ってウィンドウの下から要素を修正する
(要素の高さは、ウィンドウの高さ以上であれば、例えば)は動作しません。「ボトム」への「トップ」を変える:
var pixels = 10;
var $elemPosition = $element.position();
var $elementH = $element.height();
var $windowH = $(window).height();
var $bottom = $element.offset().top + $element.height();
if ($(window).scrollTop() + pixels >= $elemPosition.top) {
$element.css({
'position': 'fixed',
'top': pixels + 'px'
});
} else {
$element.css({
'position': 'relative',
'top': '0px'
});
}
はそれを解決!ソリューション私が思い付いた:
if (($windowH + $(window).scrollTop() - $bottom - pixels) >= 0) {
$element.css({
'position': 'fixed',
'top': ($windowH - $element.height() - pixels) + 'px',
'width': $eW + 'px',
'height': $eH + 'px'
});
} else {
$element.css({
'position': 'relative',
'top': '0px'
});
}
'top'ではなく' bottom'かもしれませんか? –
要素の高さを考慮しなければならないと確信しています – Patriotec
要素の高さを '$ element.height();'でキャプチャし、それを 'bottom'値に適用します:) –