Оптимизировать код
Привет всем!
Есть много похожего кода, вопрос в том, чтобы его уменьшить. function selekt(id) { if(id == "ruchnoe") document.getElementById('sel-avto').className = "not-select"; document.getElementById('not-sel').className = "not-select"; document.getElementById(id).className = "select"; document.getElementById('tr1').style.dysplay = "none"; document.getElementById('tr2').style.dysplay = "none"; document.getElementById('tr3').style.dysplay = "none"; document.getElementById('tr4').style.dysplay = "block"; document.getElementById('osn-ruch').checked='checked'; document.getElementById('osn-ruch').fireEvent('change'); } else if(id == "avto") document.getElementById('not-sel').className = "not-select"; document.getElementById('sel-prof').className = "not-select"; document.getElementById(id).className = "select"; document.getElementById('tr1').style.dysplay = "none"; document.getElementById('tr2').style.dysplay = "none"; document.getElementById('tr3').style.dysplay = "block"; document.getElementById('tr4').style.dysplay = "none"; document.getElementById('osn-avto').checked='checked'; document.getElementById('osn-avto').fireEvent('change'); } ... else if else if else if ... } вобщем нужно управлять стилями и классами блоков. Как это можно решить иначе? |
jQuery? Короткие имена методов, цепочки вызовов - все это позволит ужать код в две - три строчки )
|
Я понимаю, что спасение утопающих, дело рук самих утопающих).
Но хочется продуктивной помощи. Есть примеры, как сделать? |
Конечно есть. Много, очень много примеров.
|
Хотя зря я jQuery посоветовал. Это не избавит от проблемы говнокода. Просто позволит его ужать в объеме )
От этого он понятнее и рациональней не станет ) Только тормознее. |
Цитата:
|
Создать основной массив установок
var arr=[ id,key,value, id,key,value, ... id,key,value ] , в массиве от условий(id) менять параметры, arr[3*Номер строки+Номер эл-та в строке] и вызывать единственную функцию установки параметров модифицированного массива |
А зачем?
Если у вас хватило сил это всё написать, то у кампутера уж точно хватит чтоб выполнить. ;) |
Вот, другое дело) Всем спасибо!
|
Часовой пояс GMT +3, время: 17:54. |