Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Функция - медленное выолнение в IE


Автор: Цербер 5.7.2008, 13:02
Доброе время суток!
Есть функция, выезжающее мею, в Opera и в FF работает нормально а в IE очень медленно выезжает, помогите оптимизровать функцию.
Вот код
Код

function transform_obj(id,flag,step,need_height,need_width)
{
    obj = document.getElementById(id);
    now_height = obj.style.height.replace(/px/,"");
    now_width = obj.style.width.replace(/px/,"");
    if(flag=='open')
    {
        
        if(need_height){
            if(Number(now_height)>=Number(need_height))
            {
                clearInterval(interval_id);
            }
            else
            {
                new_height= Number(now_height)+Number(step);
                obj.style.height=new_height+'px';
            }
        }
        if(need_width){
            if(Number(now_width)>=Number(need_width))
            {
                clearInterval(interval_id);
            }
            else
            {
                new_width= Number(now_width)+Number(step);
                obj.style.width=new_width+'px';
            }
        }
                    
    }
    if(flag=='close')
    {
        
        if(need_height){
            if(Number(now_height)<=Number(need_height))
            {
                clearInterval(interval_id);
            }
            else
            {
                new_height= Number(now_height)-Number(step);
                obj.style.height=new_height+'px';
            }    
        }
        if(need_width){
            if(Number(now_height)<=Number(need_height))
            {
                clearInterval(interval_id);
            }
            else
            {
                new_width= Number(now_width)-Number(step);
                obj.style.width=new_width+'px';
            }
        }
    }
    
    
}


function move_menu(id,interval,step,flag,need_height,need_width)
{
    function open_(){
        transform_obj(id,flag,step,need_height,need_width);
    }
    interval_id = window.setInterval( open_ , interval);
}


Автор: Sniper 10.7.2008, 14:08
первая ссылка в гугле на запрос "оптимизация javascript"
http://kpumuk.info/javascript/javascript-optimization-part-1-adding-dom-elements-to-document/lang/ru/

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)