Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
4 / 4 / 1
Регистрация: 18.02.2010
Сообщений: 195

Упрощение 5 функций в 1

02.04.2012, 09:20. Показов 734. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я новичок. Подскажите, как это все упростить в 1 функцию с параметрами?

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
function tab1() {
    if (document.getElementById('con1').style.display == 'none') {
        document.getElementById('con1').style.display = 'block';
        document.getElementById('con2').style.display = 'none';
        document.getElementById('con3').style.display = 'none';
        document.getElementById('con4').style.display = 'none';
        document.getElementById('con5').style.display = 'none';
        
        document.getElementById('tab1').style.backgroundColor = '#50a9b9';
        document.getElementById('tab2').style.backgroundColor = '';
        document.getElementById('tab3').style.backgroundColor = '';
        document.getElementById('tab4').style.backgroundColor = '';
        document.getElementById('tab5').style.backgroundColor = '';
        
        document.getElementById('tab1').style.color = '#ffffff';
        document.getElementById('tab2').style.color = '#000000';
        document.getElementById('tab3').style.color = '#000000';
        document.getElementById('tab4').style.color = '#000000';
        document.getElementById('tab5').style.color = '#000000';
    }
}
 
function tab2() {
    if (document.getElementById('con2').style.display == 'none') {
        document.getElementById('con1').style.display = 'none';
        document.getElementById('con2').style.display = 'block';
        document.getElementById('con3').style.display = 'none';
        document.getElementById('con4').style.display = 'none';
        document.getElementById('con5').style.display = 'none';
        
        document.getElementById('tab1').style.backgroundColor = '';
        document.getElementById('tab2').style.backgroundColor = '#50a9b9';
        document.getElementById('tab3').style.backgroundColor = '';
        document.getElementById('tab4').style.backgroundColor = '';
        document.getElementById('tab5').style.backgroundColor = '';
        
        document.getElementById('tab1').style.color = '#000000';
        document.getElementById('tab2').style.color = '#ffffff';
        document.getElementById('tab3').style.color = '#000000';
        document.getElementById('tab4').style.color = '#000000';
        document.getElementById('tab5').style.color = '#000000';
    }
}
 
function tab3() {
    if (document.getElementById('con3').style.display == 'none') {
        document.getElementById('con1').style.display = 'none';
        document.getElementById('con2').style.display = 'none';
        document.getElementById('con3').style.display = 'block';
        document.getElementById('con4').style.display = 'none';
        document.getElementById('con5').style.display = 'none';
        
        document.getElementById('tab1').style.backgroundColor = '';
        document.getElementById('tab2').style.backgroundColor = '';
        document.getElementById('tab3').style.backgroundColor = '#50a9b9';
        document.getElementById('tab4').style.backgroundColor = '';
        document.getElementById('tab5').style.backgroundColor = '';
        
        document.getElementById('tab1').style.color = '#000000';
        document.getElementById('tab2').style.color = '#000000';
        document.getElementById('tab3').style.color = '#ffffff';
        document.getElementById('tab4').style.color = '#000000';
        document.getElementById('tab5').style.color = '#000000';
    }
}
 
function tab4() {
    if (document.getElementById('con4').style.display == 'none') {
        document.getElementById('con1').style.display = 'none';
        document.getElementById('con2').style.display = 'none';
        document.getElementById('con3').style.display = 'none';
        document.getElementById('con4').style.display = 'block';
        document.getElementById('con5').style.display = 'none';
        
        document.getElementById('tab1').style.backgroundColor = '';
        document.getElementById('tab2').style.backgroundColor = '';
        document.getElementById('tab3').style.backgroundColor = '';
        document.getElementById('tab4').style.backgroundColor = '#50a9b9';
        document.getElementById('tab5').style.backgroundColor = '';
        
        document.getElementById('tab1').style.color = '#000000';
        document.getElementById('tab2').style.color = '#000000';
        document.getElementById('tab3').style.color = '#000000';
        document.getElementById('tab4').style.color = '#ffffff';
        document.getElementById('tab5').style.color = '#000000';
    }
}
 
function tab5() {
    if (document.getElementById('con5').style.display == 'none') {
        document.getElementById('con1').style.display = 'none';
        document.getElementById('con2').style.display = 'none';
        document.getElementById('con3').style.display = 'none';
        document.getElementById('con4').style.display = 'none';
        document.getElementById('con5').style.display = 'block';
        
        document.getElementById('tab1').style.backgroundColor = '';
        document.getElementById('tab2').style.backgroundColor = '';
        document.getElementById('tab3').style.backgroundColor = '';
        document.getElementById('tab4').style.backgroundColor = '';
        document.getElementById('tab5').style.backgroundColor = '#50a9b9';
        
        document.getElementById('tab1').style.color = '#000000';
        document.getElementById('tab2').style.color = '#000000';
        document.getElementById('tab3').style.color = '#000000';
        document.getElementById('tab4').style.color = '#000000';
        document.getElementById('tab5').style.color = '#ffffff';
    }
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.04.2012, 09:20
Ответы с готовыми решениями:

Упрощение логических функций
Доброго времени суток! Исходная формула - первая, конечная - вторая. Как привести исходную к конечному виду?

Упрощение таблицы значений булевых функций
Здравствуйте! Задана таблица булевых функций типа х1 х2 х3 f 0 0 0 ... 0 0 1 ... 0 1 0 ... ................ 1 ...

Упрощение функций или объединение их в одну
Есть 2 функции: function ElseConnect(url: String): Boolean; var hSession, hURL: HInternet; bResult : Boolean; Buffer :...

3
Просто любитель
 Аватар для GuardCat
626 / 464 / 120
Регистрация: 20.01.2011
Сообщений: 865
Записей в блоге: 2
02.04.2012, 10:48
qw3qw3qw3r, выложите разметку, для которой этот код нужен.

Добавлено через 19 минут
Можно так:
JavaScript
1
2
3
4
5
6
7
8
function tabx(num) {
  var x;
  for (x = 1; x <= 5; x++) {
    document.getElementById('con' + x).style.display = x == num ? 'block' : 'none';
    document.getElementById('tab' + x).style.backgroundColor = x == num ? '#50a9b9' : '';
    document.getElementById('tab' + x).style.color = x == num ? '#ffffff' : '#000000';
  }
}
Но это не совсем правильно с точки зрения скорости и эргономики. Правильнее было бы менять класс. Вызывая функцию, передавайте ей число, обозначающее ваш tab (или что там у вас).
1
4 / 4 / 1
Регистрация: 18.02.2010
Сообщений: 195
02.04.2012, 12:39  [ТС]
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<table width="550" border="0" align="center" cellpadding="5" cellspacing="0">
  <tr>
    <td align="center" valign="middle" id="tab1" style="background-color:#50a9b9;font-family:Arial;font-size:10pt;color:#ffffff;" onClick="tab1()">1</td>
    <td align="center" valign="middle" id="tab2" style="font-family:Arial;font-size:10pt;color:#000000;" onClick="tab2()">2</td>
    <td align="center" valign="middle" id="tab3" style="font-family:Arial;font-size:10pt;color:#000000;" onClick="tab3()">3</td>
    <td align="center" valign="middle" id="tab4" style="font-family:Arial;font-size:10pt;color:#000000;" onClick="tab4()">4</td>
    <td align="center" valign="middle" id="tab5" style="font-family:Arial;font-size:10pt;color:#000000;" onClick="tab5()">5</td>
  </tr>
</table>
<table width="550" border="0" align="center" cellpadding="5" cellspacing="0" style="border:1px #50a9b9 solid;">
  <tr>
    <td colspan="5" id="con1" style="display:block;font-family:Arial;font-size:10pt;color:#000000;text-align:justify;background-color:#ffffff;"><strong style="color:#50a9b9;">111</strong><span style="display:none;font-family:Arial;font-size:10pt;color:#000000;text-align:justify;background-color:#ffffff;"><strong style="color:#50a9b9;"></strong></span></td>
  </tr>
  <tr>
    <td colspan="5" id="con2" style="display:none;font-family:Arial;font-size:10pt;color:#000000;text-align:justify;background-color:#ffffff;">
    <strong style="color:#50a9b9;">222</strong></td>
  </tr>
  <tr>
    <td colspan="5" id="con3" style="display:none;font-family:Arial;font-size:10pt;color:#000000;text-align:justify;background-color:#ffffff;"><strong style="color:#50a9b9;">333</strong></td>
  </tr>
  <tr>
    <td colspan="5" id="con4" style="display:none;font-family:Arial;font-size:10pt;color:#000000;text-align:justify;background-color:#ffffff;"><strong style="color:#50a9b9;">444</strong></td>
  </tr>
  <tr>
    <td colspan="5" id="con5" style="display:none;font-family:Arial;font-size:10pt;color:#000000;text-align:justify;background-color:#ffffff;">
    <strong style="color:#50a9b9;">555</strong></td>
  </tr>
</table>
0
Просто любитель
 Аватар для GuardCat
626 / 464 / 120
Регистрация: 20.01.2011
Сообщений: 865
Записей в блоге: 2
02.04.2012, 13:23
На вашу разметку смотреть больно. Немного причесал и привязал новую функцию. Вот живой пример.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.04.2012, 13:23
Помогаю со студенческими работами здесь

Упрощение цикла сортировки элементов массивов. Упрощение цикла поиска нужного элемента в массиве
Уверен, что данный код можно написать компактнее чем есть сейчас. /*Опишите, используя структуру, камеры хранения (номер, индекс...

упрощение
можно ли упростить данное условие? if($w==&quot;test1&quot; || $w==&quot;tester&quot; || $w==&quot;for&quot; || $w==&quot;of&quot; || $w==&quot;if&quot; || $w==&quot;reset&quot; ||...

Упрощение
На форме есть 33 кнопки , у всех примерно одна и таже процедура нажатия,которая вполне огромная может строк 50, только меняется...

Упрощение
Добрый вечер. При использовании функции подстановки у меня получился очень длинный и страшный результат. Есть ли в матлабе какая-нибудь...

Упрощение и алгоритм
Здрасте есть рекурентное выражение не удаётся упростить для нахождения итератора, (ВСЯ ПРОБЛЕМА - ЭТО ДВОЙНОЙ ФАКТОРИАЛ) и может поправите...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru