Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
-39 / 0 / 0
Регистрация: 11.08.2014
Сообщений: 72

Как правильно сократить код

08.02.2019, 20:45. Показов 494. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте дорогие форумчане!
Помогите пожалуйста сократить данный код. Как видите в данном коде возникает повторяемость что свою очередь привело к громоздкому коду. Код в JS
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$(document).ready(function() {
    $('#******cy').click(function(){
        ******cy()
    })
    $('#shops').click(function(){
        shops()
    })
    $('#restaurant').click(function(){
        restaurant()
    })
    $('#universities').click(function(){
        university()
    })
})
Вот тут HTML
HTML5
1
2
3
4
5
6
7
8
<div class="navbar mp-none ">
    <ul class="mp-none vheight">
        <li><a href="#******cy"     id="******cy"><i class="fa fa-calendar-plus fa-2x"></i><br>******cy</a></li>
        <li><a href="#shops"        id="shops"><i class="fa fa-shopping-cart fa-2x"></i><br>Shops</a></li>
        <li><a href="#restaurants"  id="restaurant"><i class="fa fa-utensils fa-2x"></i><br>Restaurants</a></li>
        <li><a href="#universities" id="universities"><i class="fa fa-university fa-2x"></i><br>Universities</a></li>
    </ul>
</div>
Заранее спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.02.2019, 20:45
Ответы с готовыми решениями:

Как сократить код?
Сделал карту фотографии с метками с помощью jQuery maphilight. Меток очень много (около 50 человек на групповом фото). И для каждой метки...

Как сократить код?
На странице к ссылкам в меню прикручены якоря: &lt;aside class=&quot;left-content&quot;&gt; &lt;div class=&quot;nav&quot;&gt; &lt;ul&gt; &lt;li&gt;&lt;a...

Как сократить код? и убрать дублирование?
На 5 и 7 строки Шторм ругается &quot;Duplicated jQuery Selector&quot;. Можно как-то сократить или исправить нормально 5,6 и 7 строки? (В data из...

3
 Аватар для Уф
890 / 725 / 447
Регистрация: 13.07.2015
Сообщений: 2,277
08.02.2019, 21:44
кхе, воткни его в хтмл да и все
HTML5
1
2
3
4
5
6
7
8
<div class="navbar mp-none ">
<ul class="mp-none vheight">
<li><a  onclick="******cy()" href="#******cy"><i class="fa fa-calendar-plus fa-2x"></i><br>******cy</a></li>
<li><a  onclick="shops()" href="#shops"><i class="fa fa-shopping-cart fa-2x"></i><br>Shops</a></li>
<li><a  onclick="restaurant()" href="#restaurants"><i class="fa fa-utensils fa-2x"></i><br>Restaurants</a></li>
<li><a  onclick="university()" href="#universities"><i class="fa fa-university fa-2x"></i><br>Universities</a></li>
</ul>
</div>
хотя смысл засовывать все это в именованные функции если они используются по одному разу нет

Добавлено через 4 минуты
если во всех этих функциях однотипный код, то можно будет еще сократить
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
08.02.2019, 22:03
Если имена произвольные, то можно так:
PHP/HTML
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
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
    <div class="navbar mp-none ">
        <ul class="mp-none vheight">
            <li><a href="#******cy" id="******cy"><i class="fa fa-calendar-plus fa-2x"></i><br>******cy</a></li>
            <li><a href="#shops" id="shops"><i class="fa fa-shopping-cart fa-2x"></i><br>Shops</a></li>
            <li><a href="#restaurants" id="restaurant"><i class="fa fa-utensils fa-2x"></i><br>Restaurants</a></li>
            <li><a href="#universities" id="universities"><i class="fa fa-university fa-2x"></i><br>Universities</a></li>
        </ul>
    </div>
    <script>
        $(document).ready(function () {
            $('#******cy').click(******cy);
            $('#shops').click(shops);
            $('#restaurant').click(restaurant);
            $('#universities').click(university);
        })
        function ******cy() { console.log("******cy"); }
        function shops() { console.log("shops"); }
        function restaurant() { console.log("restaurant"); }
        function university() { console.log("university"); }
    </script>
</body>
</html>
Но коллекция категорий навевает на мысль, что обычно не надо плодить отдельную функцию на каждую категорию.

А вообще всегда имеет смысл рассматривать применение массивов функций.
0
-39 / 0 / 0
Регистрация: 11.08.2014
Сообщений: 72
10.02.2019, 09:48  [ТС]
Спасибо большое!!!

Добавлено через 58 секунд
amr-now Умеете работать с json файлами, мне нужна ваша помошь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.02.2019, 09:48
Помогаю со студенческими работами здесь

Как можно сократить код используя цикл For?
$('#Memu-Group-A-1').mouseenter(function() { $(&quot;#Memu-Group-A-1 p&quot;).css(&quot;border-bottom&quot;,&quot;3px solid red&quot;); ...

Как правильно вставить jQuery код в код страницы сайта?
привет всем:) у меня возникла проблема, когда я свой jQuery код вставляю в код html главной страницы , у меня моя анимация оказывается в...

Сократить код с использованием функции toggle
скажите пожалуйста как этот код сократить и написать с помощью toggle $(&quot;.btn&quot;).on('click', function () { let input =...

Как сократить код?
У меня есть объект Worker и 6 экземпляров этого объекта. Нужно с новой строчки выводить все значения свойств каждого экземпляра. Мой код...

Сократить код
Доброго времени суток. Есть такое задание: по значениям из заполненной формы строится процентная диаграмма. Код у меня, хоть и довольно...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru