1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
||||||||||||||||
1 | ||||||||||||||||
Формирование меню выбора пунктов режима14.12.2023, 15:01. Показов 851. Ответов 14
Метки нет (Все метки)
Здравствуйте!
Если Вас не затруднит, не поможете найти ответы. Реализую меню выбора пунктов режима. • после выбора пункта Режим-1, а потом Режим-2 - у Режим-1 восстанавливаются цвета, но пропадает выделение подсветкой фона при наведении на пункт Режим-1 Мышкой. ? Не понял причину - как понимаю, за это отвечает .d:hover, который не трогал • что лучше использовать для кнопок выбора input/div или нет разницы? • в зависимости от выбора Режима, в окне 2 должен появляться список подрежимов. Для какого-то пункта (напр, режим-1) подрежимов может не быть, и их количество зависит от выбранного режима (скажем 5 и 2 для Режимов 2 и 3) ? что посоветуете использовать для их вывода и обработки ?
0
|
14.12.2023, 15:01 | |
Ответы с готовыми решениями:
14
Посоветуйте как организовать формирование пунктов меню из БД на ASP.NET Меню должно снова работать после выбора одного из пунктов Создать меню, которое работает по принципу выбора определенных пунктов с помощью стрелочек Дана матрица N*N. Создать текстовое меню для возможности выбора решения любого из 2 пунктов Создание программы, в которой используется меню, состоящее из нескольких пунктов выбора желаемого действия |
2992 / 1166 / 315
Регистрация: 14.03.2022
Сообщений: 2,833
|
||||||
14.12.2023, 16:51 | 2 | |||||
Я убрал твою "кашу". Просто использую класс
on ...
1
|
1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
|
14.12.2023, 17:51 [ТС] | 3 |
Спасибо за внимание, но к сожалению этот вариант не решает моих задач:
• если выбран пункт (красный фон), то зеленым он уже не должен подсвечиваться (ибо в настоящий момент он активный) - что у меня было решено (к тому, что только обращаю внимание, как должно работать) • кнопки должны работать как переключатели (только один активный пункт) - нажимая на новый режим, тот, который был активным, должен принять старые цвета. В предложенном Вами варианте надо нажать повторно, чтобы его погасить • и есть еще момент, для формирования списка подрежимов надо получить признак, какой из input был нажат - да, видел, можно выделить id инпута, но я его передаю в параметрах функции и его уже не надо вычислять. Но вполне возможно, что чего-то не понимаю, поэтому только высказываю соображения. Кроме того много знающий по его словам программист, и думаю, что это так, мне доказывал, что пустой список подрежимов (зависимый) вывести физически нельзя при использовании тегов и css. Хотя и допускаю, что он мог ошибаться и не знал, как реализовать такой вывод с помощью css. В принципе, один вариант я знаю, как реализовать - используя type = 'hidden', когда список подрежимов пуст, но, возможно, это также неразумный в плане программирования вариант, поэтому и обратился за советами. Ps. В любом случае, если кто сможет подсказать, почему у меня отключается подсветка фоном при наведении мышкой, был бы очень признателен Добавлено через 11 минут Подумал ранее, что для варианта, если надо выбрать несколько пунктов - данный вариант подходит, но сейчас обнаружил еще один серьезный минус - при нажатии на кнопку - она как была зеленой, так такой и остается до тех пор, пока мышку не уберешь с кнопки. Хотя каким-то образом все это средствами html и css последнее решается. Да и как переключатель также видел.
0
|
1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
|
15.12.2023, 09:26 [ТС] | 5 |
Спасибо, krvsa.
Вчера появилась такая мысль: можно ли через джаваскрипт влиять на классы - очень полезный совет. Буду разбираться. Интересно было бы услышать, почему каша ? Например, хочу установить характеристики для: Автор: Страна / Пол / ... Книги: Жанр / Год написания / ... И не хочу использовать выпадающие списки, а список подрежимов. например, при выборе жанра выводятся типы жанров, а при "год написания" - список периодов Как раз, как мне кажется, удобнее использовать для автора и книг разные функции, чтобы не было "каши".
0
|
2992 / 1166 / 315
Регистрация: 14.03.2022
Сообщений: 2,833
|
|
15.12.2023, 11:59 | 6 |
Потому что много чего из твоего
html и js можно просто выкинуть..."Каша" это образное выражение. Ассоциация с приготовлением пищи... Если неумелый повар начнет делать тот же плов - большая вероятность что он приготовит не плов, а кашу. Такая же ситуация с приготовлением супа... Неопытный поваренок может переборщить с крупами и получит в итоге кашу. Если ты не силен в готовке - термин "каша" будет непонятен. Добавлено через 3 минуты Пока не особо у тебя получается... Поскольку выше ты описал абсолютно аналогичные действия, но собрался их делать "раздельно". Для более детального совета нужен очередной тестовый пример от тебя.
0
|
1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
|
15.12.2023, 18:05 [ТС] | 7 |
krvsa, то, что каша - было образно - понял. Хотел написать, что, ког87да писал ответ, взял в кавычки, оказалось, был невнимателен - только во второй раз.
На счет удалить, css не имею в виду, а в html удалять нечего, там только три input, если же удалить что-то из js, код перестанет работать - в таком же виде он работает. Область же div id= "reg2" - она не лишняя, указал специально, в ней должны размещаться подрежимы, в зависимости от выбранного пункта. если же сравнивать наши примеры по количеству операторов, то не думаю, что сильно отличаются: в моем примере чуть больше, но в первую очередь за счет if - но он нужен для дальнейших действий. • Пока не готов представить "очередной тестовый пример" - для этого вначале должен разобраться с присланным вариантом (иначе это было бы неуважением), а для этого нужно время, ибо в нем присутствуют объекты, которые сразу не могу понять, в том числе из-за отсутствия теоретических знаний. Ps. Чтобы правильно меня поняли, при отсутствии знаний ничего не доказываю - просто некоторые моменты в плане логики вызывают сомнения, которые и высказываю. В любом случае спасибо за ответ
0
|
1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
||||||||||||||||
21.12.2023, 09:27 [ТС] | 8 | |||||||||||||||
Вот пример того, что хотел бы приблизительно видеть.
Правда, добавив вывод подрежимов, пока не понял, почему перестал восстанавливаться цвет для режима 2 Сделал в своем стиле, потому что пока не знаю иной.
0
|
111 / 145 / 32
Регистрация: 03.09.2018
Сообщений: 499
|
||||||||||||||||
21.12.2023, 18:02 | 9 | |||||||||||||||
И да, данный код будет корректно работать с такой вёрсткой Кликните здесь для просмотра всего текста
1
|
1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
|
22.12.2023, 10:06 [ТС] | 10 |
Спасибо огромное, Именч, это действительно то, что хотел видеть.
И отдельное спасибо за комментарии. Вот только интересно было бы услышать мнение: имеет ли место быть мой код: вроде бы он по количеству операторов примерно равен Вашему, по скорости обработки мне кажется они также примерно одинаковы ?
0
|
62 / 50 / 13
Регистрация: 10.11.2023
Сообщений: 111
|
|
22.12.2023, 11:23 | 11 |
dav60, javascript не измеряют количеством операторов
можно ознакомиться habr.com Основы внутреннего устройства JavaScript Многие люди по-прежнему считают, что JavaScript — это интерпретируемый язык, но это уже не так. Вместо простой интерпретации современные движки JavaScript используют комбинацию компиляции и интерпретации, называемую компиляцией Just-in-time(JIT). При таком подходе весь код компилируется в машинный код и сразу же исполняется. То есть присутствуют два этапа обычной предварительной компиляции, но портируемого исполняемого файла нет. И исполнение происходит сразу же после компиляции. Это идеально подходит для JavaScript, потому что это намного быстрее, чем просто исполнение строка за строкой. Чтобы уменьшить размер файлов и ускорить загрузку веб страниц есть минификаторы. Минификацию делают перед загрузкой на сервер . только зачем об этом думать,если ваш скрипт работает неверно ?
1
|
1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
|
22.12.2023, 17:08 [ТС] | 12 |
Спасибо за информацию, ZeroKara.
Действительно, относился к категории - многие - также считал, что JavaScript - интерпретируемый язык. Но ведь на наш случай компилируемый язык или нет - это не распространяется - оба варианта компилируются, главное чтобы оба были рабочими. Ну почему же ? У меня все работает (по крайней мере у меня на опере) за исключением того, что сбивается подсветка ссылок, после того как восстанавливаю цвета активной ссылки командой document.getElementById(s).style.background и color- такое впечатление, что она изменяет и свойства подсветки input - не думаю, что это нерешаемая проблема - и для понимания постараюсь поискать ответ - быстрей всего он может пригодиться и в дальнейшем независимо от способа программирования. И, если получится найти ответ, будут два решения: мой, который мне понятен и Именча, для применения которого надо вначале понять многие термины его решения. Но, если мой вполне применяемый, я бы отложил изучение теории на более позднее время. Поэтому и пытаюсь понять, чем он плох, чтобы от него отказаться. Ибо не могу не учесть мнение krvsa, что у меня в голове "каша", хотя и не понимаю, почему - вроде бы у меня все просто и логично.
1
|
62 / 50 / 13
Регистрация: 10.11.2023
Сообщений: 111
|
|
22.12.2023, 19:56 | 13 |
Ой. извините. Это я образно. Не конкретно Ваш скрипт.
Нет смысла минифицировать программу, которая делает не то что нужно, выдает неверный ответ или сыпется ошибками.
1
|
111 / 145 / 32
Регистрация: 03.09.2018
Сообщений: 499
|
|
22.12.2023, 22:51 | 14 |
Их даже и близко нельзя сравнивать, совершенно разный подход. Я заранее разметил вёрстку нужными атрибутами, указав в них связи между другими элементами. И дальше через JS реализовал проход по данным атрибутам, связав их окончательно по функционалу.
Данный вариант на JS реализуется повсеместно. Тот же bootstrap и иные фреймворки, такой тип взаимосвязи используют. Нет, обработчик click мною установленный, уже знает заранее с какими элементами он будет работать. А ваш код, постоянно пытается найти во всём документе нужный id посредством document.getElementById. Хотя скорее данная функция постоянно кэширует все элементы на моменте загрузки html Добавлено через 2 минуты На это кстати тоже надо обратить внимания, если нету динамических элементов, это будет прекрасно работать. А если есть, то нужно по другому реализовывать скрипт.
1
|
1 / 1 / 0
Регистрация: 08.03.2019
Сообщений: 81
|
|
23.12.2023, 17:04 [ТС] | 15 |
Ну что Вы, совершенно нет оснований для извинений - меня не задевает критика, я ее только приветствую - она может помочь найти более правильное решение.
И отдельная благодарность Именчу, за обстоятельное разъяснение причин минусов моего кода.
0
|
23.12.2023, 17:04 | |
23.12.2023, 17:04 | |
Помогаю со студенческими работами здесь
15
Добавить меню выбора режима шифрование, расшифровка. Проверку цифр ( если отрицательное число-ошибка) Как сделать, чтобы при перезагрузке появлялось меню выбора ОСь, а не востановление Windows из спящего режима? Написать функцию выбора пунктов меню стрелками "вверх" "вниз" После выбора варианта загрузки система виснет - Windows XP . загрузка идет тока с выбора безопасного режима Центровка пунктов в выпадающем меню по центру ul блока (Битрикс меню) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |