Позиционирование через js
имеется список
ul {
position: relative;
}
li {
position: absolute;
}
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
......
<li></li>
<li></li>
</ul>
ширина у каждого LI разная. вообщем нужно чтоб при загрузке страницы скрипт выставил значения LEFT каждому LI чтобы они выстроились как при float, может немного не понятно выразился, вообщем у если длинна Первого LI 100, второго 120, третьего 130, четвёртого 90 и т.д, скрипт ставил им Left таким образом - у первого left:0, второго left:100 (отступ для первого пункта как бы), третий 120 (отступ для 1 и 2 пункта). как понимаю тут всё вокруг .each крутится , только не знаю как это написать. |
Все очень просто! управлять значениями можно так :
document.getElementById('NameDIV').style.left=100+ 'px'; и нужно разбить их на классы! иначе не распознаешь к какому объекту обращаться! |
(function() {
for(var i = 0, els = document.getElementsByTagName('ul')[0].getElementsByTagName('li'), l = els.length, allWidth = 0, elWidth = ''; i < l; i++) {
els[i].style.left = allWidth + "px";
elWidth=window.getComputedStyle(els[i],null).getPropertyValue("width");
allWidth += parseInt(elWidth.substring(-2));
};
})();
Severtain, классы не дают уникальность. Тогда уж на id разбивать. |
| Часовой пояс GMT +3, время: 07:28. |