Цитата:
|
решил потренироваться. но застрял.
Создал два блока и элемент на котором кликаем. При клике блок меняет свою высоту, но не до 100 px а до бесконечности. Что тут не так? Вот такой простенький код.
function run(id){
var maxheight = 100;
var elem = document.getElementById(id);
var h = elem.offsetHeight;
slide = function(){
++h;
elem.style.height = h + 'px';
}
if (h > maxheight) clearInterval (intervalID);
if (h < maxheight) intervalID = setInterval('slide()',1);
}
|
Таймер уничтожается в функции run, которая создав его, больше ни разу не вызывается.
Меняем высоту родительского блока, а высоту вложенного блока только спрашиваем через offsetHeight, а у вас работа идёт с одним элементом. В принципе 2 блока не обязательно, можно и одним обойтись, только код будет по сложнее, а можно ещё со свойством clip: rect(…); попробовать сделать. |
Цитата:
Цитата:
Вот как раз спросить хотел. На сколько принципиально использование двух блоков. и почему высоту надо менять именно у внешнего |
Цитата:
Цитата:
|
Octane, а тестовые задания еще есть? :)
|
Цитата:
|
Вложений: 1
Цитата:
Цитата:
|
| Часовой пояс GMT +3, время: 14:06. |