неработает анимацыя
я написал фунцию что бы делать анимацию элемента:
function animaciya(element, parametr, nachalo, konec, vremya) { hod=konec-nachalo element.style[parametr]=nachalo interval=setInterval(function(){ if(nachalo<konec) uslovie=parseInt(element.style[parametr])>konec; else uslovie=parseInt(element.style[parametr])<konec; if(nachalo>konec) element.style[parametr] = parseInt(element.style[parametr])-1; else element.style[parametr] = parseInt(element.style[parametr])+1; if(uslovie) clearInterval(interval); },vremya/hod); } если вызыват animaciya(document.getElementById("primer"), "height", 20, 0, 1000); то все хорошо работает но если вызвать animaciya(document.getElementById("primer"), "display", "none", "block", 1000); или с opacity/float,top,left,position,direction то нерабтает почему?? в коде ошипка или я вызываю нетак? |
<style type="text/css"> div { background: blue; position: absolute; width: 100px; height: 100px; } </style> <script type="text/javascript"> window.onload = function(){ var i = 0; (function(){ if(++i <= 200){ document.getElementsByTagName('div')[0].style.left = i+'px'; setTimeout(arguments.callee, 10); } else { alert('finished'); } })(); }; </script> <div></div> |
и вчом смысл?
у менято display не меняется а как вы зделали чтобы LEFT менялся??? |
Цитата:
Цитата:
Цитата:
|
я не \понимаю 16 строку тамже должна быть бесконечная рекурсия..выбрасывать сообщ в консоли ошибок.
Цитата:
присваиваю нач значение в интервале: состовляю условие по которому анимация будет завершатся прибавляю/отнимаю значение на 1 если условие коцна анимации верно,то сбрасываю интервал |
Matre, чтобы плавно появлялось и угасало меняйте не display, а opacity
|
самое главное прочитать как это работает: http://javascript.ru/blog/Andrej-Par...cii-JavaScript
а ту, есть активное обсуждение (и кроссбраузерная функция того примера, что в статье): http://javascript.ru/forum/misc/1367...nimaciejj.html |
Vulkan, с opacity тоже нерабоает!!
monolithed, там непонятно..формулы какието.хотелось бы узнать,почему неработает мой способ Цитата:
dmitriymar попробовал нерасбодяженый героин? и говорит ,что анимацыю делают циклом?? ничего хорошего изтой темы не моуг подчерпнуть длясебя |
Matre, с opacity не работает потому что opacity может содержать значения от 0 до 1, а у тебя единица промежуточная получается 1, то есть для opacity нужно 0.01 или 0.1
|
Matre,
дятел думай что говоришь . |
Часовой пояс GMT +3, время: 03:09. |