如何使用 jquery 设置顶部位置

我正在创建自定义 div 滚动器,并希望设置内容 div 的顶部位置。我的 jquery 代码如下:

containerOuterHeight=$("#messagePopUpContainer").outerHeight();
contentOuterHeight=$("#content").outerHeight();
contentTopPosition=$("#content").offset().top;
alert("contentTopPosition"+contentTopPosition);
alert(contentTopPosition-(containerOuterHeight/20));
$("#content").offset().top=contentTopPosition-(containerOuterHeight/20);
//$("#content").css("top",( contentTopPosition-(containerOuterHeight/20) ) + "px");
alert("contentTopPosition"+$("#content").offset().top);
//alert("Fontsize"+$('#content').css('font-size') );

Html 为:

<div id='messagePopUpContainer' style='background-color:#ffffff; overflow: hidden;'>
<a href='javascript:void(0);' id='popupanchor' onkeydown='PopupKeyHandler("' + elmId + '");'></a>

<div id='content' style='width:350px'>' + methods.settings[elmId].text + '</div >
<div id='popupReturn'>Return</div></div></div>'
229655 次浏览

你可以使用 CSS 来完成这个技巧:

$("#yourElement").css({ top: '100px' });

使用 . css ()访问 CSS 属性和操作非常容易。例如,更改单个属性:

$("selector").css('top', '50px');

原型机:

$('yourDivId').setStyle({top: '100px', left:'80px'});

你也可以

   var x = $('#element').height();   // or any changing value


$('selector').css({'top' : x + 'px'});

或者

你可以直接使用

$('#element').css( "height" )

.css( "height" ).height()之间的区别在于,后者返回一个没有单位的像素值(例如,400) ,而前者返回一个单位完整的值(例如,400px)。那个。当需要在数学计算中使用元素的高度时,建议使用 height ()方法。Jquery 文档

只供参考,如果你使用:

 $(el).offset().top

要获得该位置,它可以受到父元素位置的影响。因此,您可能希望保持一致,并使用以下方法来设置它:

$(el).offset({top: pos});

与上面的 CSS 方法相反。