Javascript 添加元素的高度

Javascript 添加元素的高度,javascript,jquery,Javascript,Jquery,我循环浏览所有高度不同且绝对定位的列表项。我希望每个li在Y轴上显示得比前一个li低 我一直在琢磨如何把以前所有的高度变量加起来。第三个li Y坐标是前两个li的高度之和 $("li").each(function(){ the_height=$(this).height(); prev_height = $(this).prev().height(); $(this).css({"left" : prev_height * 1, "top" : prev_heigh

我循环浏览所有高度不同且绝对定位的列表项。我希望每个li在Y轴上显示得比前一个li低

我一直在琢磨如何把以前所有的高度变量加起来。第三个li Y坐标是前两个li的高度之和

 $("li").each(function(){
    the_height=$(this).height();
    prev_height = $(this).prev().height();

    $(this).css({"left" : prev_height * 1, "top" : prev_height});
    console.log('prev height: '+prev_height);
 });
HTML

    公共汽车站是由巨大的字母组成的社交聚会点
  • 该组织将来自不同背景的艺术家和观众聚集在一起,参与创作过程,从而建立社区。在创意联盟(Creative Alliance)和东南CDC主办的一系列街景设计研讨会上,Highlandtown的居民表达了对互动公交车站的渴望,该公交车站为Highlandtown艺术与娱乐区做出了陈述
  • 作为回应,创意联盟与西班牙合作的mmmm……合作,作为倡议TRANSIT—的一部分;在巴尔的摩与欧洲进行创意场所制作。在当地雕塑家的帮助下,他们创造了公共汽车

以下是您的操作方法

var y = 0;

$("li").each(function() {
    $(this).css({
        "top": y
    });
    y += $(this).outerHeight();
});


以下是您的方法

var y = 0;

$("li").each(function() {
    $(this).css({
        "top": y
    });
    y += $(this).outerHeight();
});


您将使用在循环外部初始化的变量:

var y = 0;
$("li").each(function(){
  $(this).css({ left: y, top: y });
  y += $(this).height();
});

我不确定是否要将
left
样式设置为与
top
样式相同,但我将其保留在原始代码中。

您将使用在循环外部初始化的变量:

var y = 0;
$("li").each(function(){
  $(this).css({ left: y, top: y });
  y += $(this).height();
});
我不确定您是否要将
样式设置为与
顶部
样式相同,但我将其保留在原始代码中。

这可能会有帮助:

var ht = 0; // change if needed;
$('.origin_left>li').each(function(){
  var e = $(this);  
  e.css('top', ht); ht += e.outerHeight(true);
});
也许这会有帮助:

var ht = 0; // change if needed;
$('.origin_left>li').each(function(){
  var e = $(this);  
  e.css('top', ht); ht += e.outerHeight(true);
});
.outerHeight(true)
如果需要页边距。
.outerHeight(true)
如果需要页边距。