Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Укоротить скрипт с условиями (https://javascript.ru/forum/misc/54072-ukorotit-skript-s-usloviyami.html)

k_DizeL 02.03.2015 18:27

Укоротить скрипт с условиями
 
Как можно укоротить этот индусский скрипт:
if
            (xa>1000)
            {padModule.innerHTML = 'ей'}
            else
            {padModule.innerHTML = 'я'};
            
            if
            (xa>0)
            {checklist.setAttribute("class", "list")}
            else
            {checklist.setAttribute("class", "listoff")};
            
            if
            (xa>1000)
            {modules.style.marginLeft = '132px'}
            else
            {modules.style.marginLeft = '124px'};

ksa 02.03.2015 19:10

Цитата:

Сообщение от k_DizeL
Как можно укоротить этот индусский скрипт

Например объединить отработку одинакового условия...

if (xa>1000) {
	padModule.innerHTML = 'ей'
	modules.style.marginLeft = '132px'
} else {
	padModule.innerHTML = 'я'
	modules.style.marginLeft = '124px'
};
if (xa>0) {
	checklist.setAttribute("class", "list")
} else {
	checklist.setAttribute("class", "listoff")
};

рони 02.03.2015 19:30

Цитата:

Сообщение от k_DizeL
setAttribute("class",

className :write:

ksa 02.03.2015 19:33

Тогда уже плюсом тернарный оператор...

checklist.className=(xa>0)? 'list': 'listoff';

k_DizeL 02.03.2015 19:50

Спасибо, не знал этого, а узнать очень хотелось.
Только недавно начал изучение JS

danik.js 02.03.2015 20:32

Цитата:

Сообщение от k_DizeL
marginLeft = '132px'

k_DizeL, че за бред? Верстку надо делать так, чтобы не приходилось подгонять пиксель-в-пиксель.

k_DizeL 03.03.2015 00:49

Цитата:

Сообщение от danik.js (Сообщение 359251)
k_DizeL, че за бред? Верстку надо делать так, чтобы не приходилось подгонять пиксель-в-пиксель.

В строке меняется падеж, соответственно меняется отступ, пришлось подгонять окно с position: absolute;, по другому ни как или не нравится

k_DizeL 03.03.2015 00:53

А этот колхоз уменьшается?
(parseInt(hosting.options[hosting.selectedIndex].value) >= 1) ? padej.innerHTML = 'а' : 0;
            (parseInt(hosting.options[hosting.selectedIndex].value) >= 1) ? document.getElementById('padej').style.display = 'inline' : 0;
            (parseInt(hosting.options[hosting.selectedIndex].value) == 0) ? document.getElementById('padej').style.display = 'none' : 0;
       
            (parseInt(pages2.options[pages2.selectedIndex].value) < 0) ? padPage.innerHTML = 'ы' : 0;
            (parseInt(pages2.options[pages2.selectedIndex].value) < 0) ? document.getElementById('padPage').style.display = 'inline' : 0;
            (parseInt(pages2.options[pages2.selectedIndex].value) >= 0) ? document.getElementById('padPage').style.display = 'none' : 0;

danik.js 03.03.2015 05:34

Цитата:

Сообщение от k_DizeL
А этот колхоз уменьшается?

Ну ты видишь что у тебя почти вся масса кода состоит из дублей? Значит уменьшается.

danik.js 03.03.2015 05:35

hosting.options[hosting.selectedIndex].value
В переводе с индус-кода это будет hosting.value.


Часовой пояс GMT +3, время: 21:24.