如何为元素赋予动态高度

时间:2016-06-22 10:58:10

标签: javascript php

我有一个包含以下字段名称和计数的数组。

我想根据PHP或Javascript的数组计算动态高度和宽度。

我预先定义了最大和最小高度,所以只需要一个可以为所有人返回高度的功能。

例如我的数组是:

$arr = array(
    array('name'=>'a','count'=>'2'),
    array('name'=>'b','count'=>'3'),
    array('name'=>'c','count'=>'1'),
    array('name'=>'d','count'=>'2')
);

a - 2
b - 3
c - 1
d - 2

让我们假设我的分钟。高度是110和最大身高是150

所以c最小,所以它的高度为110 和b最大,因此其高度为150

和a和d具有相同的值,因此两者之间的高度应该与130相同

它应该是动态的,所以可以适用于任何不行。伯爵和任何不。变量

如何使用1个功能完成所有这些操作?

请建议一些链接或其他东西

2 个答案:

答案 0 :(得分:1)

此代码根据计数项的值

计算高度
$arr = array(
    array('name'=>'a','count'=>'2'),
    array('name'=>'b','count'=>'3'),
    array('name'=>'c','count'=>'1'),
    array('name'=>'d','count'=>'2')
);

$cnt = array_column($arr, 'count');

$cnt_min = min($cnt);
$cnt_max = max($cnt);
$min = 110;
$max = 150;

foreach($arr as &$item) 
   $item['heaight'] = $min + floor(($item['count']-$cnt_min)*($max-$min)/($cnt_max-$cnt_min));

print_r($arr); 

答案 1 :(得分:0)

根据您的描述,这将为您提供所需的高度 $height = (110 + ($arr["a"]["count"] * 10))."px"; 然后你可以使用你知道的任何一种方式来填充你的html,就像在你echo时添加一个内联样式: <div class = "yourClass" style = "height:'.$height.';"></div>