Показать сообщение отдельно
  #13 (permalink)  
Старый 06.07.2015, 22:30
Аватар для sash003
Аспирант
Отправить личное сообщение для sash003 Посмотреть профиль Найти все сообщения от sash003
 
Регистрация: 23.10.2014
Сообщений: 72

рони, благодарю!
Я наверно вам уже надоел, но гляньте ещё, пожалуйста, делаю мини джейквери для народа, не хочет работать slideUp
function _init_(el){
       this.s = document.querySelectorAll(el);
   }
   
 // главная и самая сложная функшн
 function _A_(el){
     return new _init_(el)      
 }

_init_.prototype.css = function(obj){
    if(typeof obj === 'object'){
     for (var e = 0; e < this.s.length; e++){
         for (i in obj){
         this.s[e].style[i] = obj[i];   
     }   
     }
     return this;
    }
    else {
        if(obj === 'width') return this.s[0].offsetWidth;
        if(obj === 'height') return this.s[0].offsetHeight
        else return this.s[0].style[obj] || getComputedStyle(this.s[0])[obj];
    }    
} 

_init_.prototype.attr = function(){
    
}

_init_.prototype.slideUp = function (duration){
   
   this.css({'overflow' : 'hidden'});
   var height = parseInt(this.css('height'));
   for(var  i = 1; i <= height ; i++){      
       (function(i){
          setTimeout(function(){
                    this.css({'height' : (height-i)+'px'});  // this.css is not a function. хотя overflow устанавливает перед этим 
          }, i*duration/height);   
       })(i); 
    } 
    return this;
}
Ответить с цитированием