Bir öğenin pencereye göre üstünü sabitlemek için birçok örnek buldum. Pencerenin altından bir X piksel öğesini nasıl düzeltebilirim? Basitçe 'alt' çalışmıyor için 'top' değişen üst itibarenPencerenin altından elemanı sabitlemek için JQuery'yi kullanın
(örneğin, öğenin yüksekliği pencere yüksekliğinden daha fazladır ise):
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'
});
}
bunu çözüldü!
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'
});
}
"Alt" yerine "alt" olabilir mi? –
Eminim elemanın yüksekliğinin – Patriotec
dikkate alınması gerektiğinden, elemanın yüksekliğini '$ element.height();' ile yakalayın ve 'bottom' değerine uygulayın :) –