Показать сообщение отдельно
  #1 (permalink)  
Старый 18.06.2012, 12:54
Аватар для z700i
Аспирант
Отправить личное сообщение для z700i Посмотреть профиль Найти все сообщения от z700i
 
Регистрация: 15.10.2010
Сообщений: 77

изменение типа массива
Хотел сделать функцию которая добавляет элемент на страницу
Выглядит это как-то так:
function create(tag,params,parent){
    if(!tag)
        return 'tagName is null';
    var nevv =  document.createElement(tag);
    nevv.id = params.id;
    return (parent? parent : document.body).appendChild(nevv); 
}

create('div',
       {
           id:'newDiv',
           class:'className',
           style:{
               display:'none',
               width:'100px'
           }
       },
       ge('parent')
      )


Встретился с проблемой применения параметров(params), писать для каждого из них отдельную команду:
nevv.id = params.id? params.id : '';
nevv.class = params.class? params.class : '';
nevv.style.display = params.style.display? params.style.display : '';
nevv.style.width = params.style.width? params.style.width : '';
nevv.style.height = params.style.height? params.style.height : '';

Слишком объёмно и в плане работы, и в плане размера кода, да и работать, я подозреваю, будет не шибко быстро..
Можно ли сделать из ассоциативного массива многомерный и заполнить параметры существующими значениями с помощью цикла?
Ответить с цитированием