我正在创建自定义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>'
答案 0 :(得分:126)
您可以使用CSS来实现这一诀窍:
$("#yourElement").css({ top: '100px' });
答案 1 :(得分:61)
访问CSS属性&amp;使用.css()进行操作非常简单。例如,要更改单个属性:
$("selector").css('top', '50px');
答案 2 :(得分:12)
您也可以
var x = $('#element').height(); // or any changing value
$('selector').css({'top' : x + 'px'});
OR
您可以直接使用
$('#element').css( "height" )
.css( "height" )
和.height()
之间的区别在于后者返回无单位像素值(例如,400
),而前者返回单位完整的值(例如,400px
)。当需要在数学计算中使用元素的高度时,建议使用.height()方法。 jquery doc
答案 3 :(得分:3)
仅供参考,如果您正在使用:
$(el).offset().top
要获得该位置,它可能会受到父元素位置的影响。因此,您可能希望保持一致并使用以下内容进行设置:
$(el).offset({top: pos});
与上面的CSS方法相反。
答案 4 :(得分:2)
使用原型:
$('yourDivId').setStyle({top: '100px', left:'80px'});