Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.08.2019, 04:51
Аватар для Максим Ученик
Новичок на форуме
Отправить личное сообщение для Максим Ученик Посмотреть профиль Найти все сообщения от Максим Ученик
 
Регистрация: 13.08.2019
Сообщений: 7

Сортировка меню по data
Есть меню обычное статическое.
В нём есть data-num в разброс
Я хочу что бы пункты меню встали по порядку
Но у меня не получилось его отсортировать до конца но суть проблемы есть в песочнице и так же моя попытка это решить но не знаю на сколько это верно : https://codepen.io/topicstarter/pen/LYPZdZV

Последний раз редактировалось Максим Ученик, 18.08.2019 в 04:53.
Ответить с цитированием
  #2 (permalink)  
Старый 18.08.2019, 05:36
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,716

Сначала такой вопрос - в реальности откуда берет сервер данные этого меню?
Ответить с цитированием
  #3 (permalink)  
Старый 18.08.2019, 05:40
Аватар для Максим Ученик
Новичок на форуме
Отправить личное сообщение для Максим Ученик Посмотреть профиль Найти все сообщения от Максим Ученик
 
Регистрация: 13.08.2019
Сообщений: 7

Сообщение от laimas Посмотреть сообщение
Сначала такой вопрос - в реальности откуда берет сервер данные этого меню?
я только тренируюсь и пока это просто меню от руки и хотел бы научится сортировать его ... и так же я понимаю что можно и руками в html отредактировать
Ответить с цитированием
  #4 (permalink)  
Старый 18.08.2019, 06:01
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,716

Сообщение от Максим Ученик
пока это просто меню от руки
Пока, а далее что будет? Ведь трудно в современных реалиях предположить, что и в реальности у вас все будет статика, и вы будет ручками все на страницах прописывать. То есть, страницы будут динамическими, а контент для страниц храниться в большей его части в базе данных. И конечно эти данные будут иметь структуру типа: раздел -> подраздел -> страница. И все это будет добавляться/редактироваться через административный раздел.

Серверный скрипт, получая запросы от клиента, строит страницы, на которых всегда будет выводить меню, как подключаемый шаблон, например, шапки страниц. А зная в каком порядке нужно выводить элементы меню, данные для него сразу же и сортируются требуемым образом. Коли у вас данные для data-num и текст пунктов меню связаны, то данные для меню и нужно отсортировать по полю для data-num. То есть, например, пусть в базе данные для data-num находятся в поле под именем "data", а тексты в поле под именем "name". Серверный код делает запрос с сортировкой:

SELECT * FROM table_name ORDER BY data

и строит по извлеченным данным меню отсортированное по data-num.

На клиенте конечно же возникают ситуации, когда набор html элементов нужно отсортировать/отфильтровать, но меню это все-таки не тот набор, которым должен заниматься клиент. Другое дело, если бы сервер только отдавал клиенту массив данных для меню, а уже клиент по ним строил html код меню, тогда еще можно как-то оправдать такую сортировку. Но даже в этом случае серверу сподручнее сразу выполнить необходимую сортировку данных для меню.

Последний раз редактировалось laimas, 18.08.2019 в 06:09.
Ответить с цитированием
  #5 (permalink)  
Старый 18.08.2019, 06:11
Аватар для Максим Ученик
Новичок на форуме
Отправить личное сообщение для Максим Ученик Посмотреть профиль Найти все сообщения от Максим Ученик
 
Регистрация: 13.08.2019
Сообщений: 7

Сообщение от laimas Посмотреть сообщение
Пока, а далее что будет? Ведь трудно в современных реалиях предположить, что и в реальности у вас все будет статика, и вы будет ручками все на страницах прописывать. То есть, страницы будут динамическими, а контент для страниц храниться в большей его части в базе данных. И конечно эти данные будут иметь структуру типа: раздел -> подраздел -> страница. И все это будет добавляться/редактироваться через административный раздел.

Серверный скрипт, получая запросы от клиента, строит страницы, на которых всегда будет выводить меню, как подключаемый шаблон, например, шапки страниц. А зная в каком порядке нужно выводить элементы меню, данные для него сразу же и сортируются требуемым образом. Коли у вас данные для data-num и текст пунктов меню связаны, то данные для меню и нужно отсортировать по полю для data-num. То есть, например, пусть в базе данные для data-num находятся в поле под именем "data", а тексты в поле под именем "name". Серверный код делает запрос с сортировкой:

SELECT * FROM table_name ORDER BY data

и строит по извлеченным данным меню отсортированное по data-num.

На клиенте конечно же возникают ситуации, когда набор html элементов нужно отсортировать/отфильтровать, но меню это все-таки не тот набор, которым должен заниматься клиент. Другое дело, если бы сервер только отдавал клиенту массив данных для меню, а уже клиент по ним строил html код меню, тогда еще можно как-то оправдать такую сортировку. Но даже в этом случае серверу сподручнее сразу выполнить необходимую сортировку данных для меню.
я это всё понимаю, с php и выборкой у меня нету проблем, в данный момент у меня хромает javascript и хотел бы подтянуть/научиться именно ему, сортировкой и пока придумал себе именно такую задачу ...
Ответить с цитированием
  #6 (permalink)  
Старый 18.08.2019, 06:15
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,716

Ну тогда, коли ради "подтянуть" и речь о сортировке, то сделайте поиск по форму для "сортировка" и т.п., получите массу тем о сортировке как массивов/объектов, так и html наборов элементов, и "подтягивайтесь" на здоровье.
Ответить с цитированием
  #7 (permalink)  
Старый 18.08.2019, 06:20
Аватар для Максим Ученик
Новичок на форуме
Отправить личное сообщение для Максим Ученик Посмотреть профиль Найти все сообщения от Максим Ученик
 
Регистрация: 13.08.2019
Сообщений: 7

Сообщение от laimas Посмотреть сообщение
Ну тогда, коли ради "подтянуть" и речь о сортировке, то сделайте поиск по форму для "сортировка" и т.п., получите массу тем о сортировке как массивов/объектов, так и html наборов элементов, и "подтягивайтесь" на здоровье.
если бы вы посмотрели бы в codepen то увидили бы что массив я уже отсортировал но само меню нет ....понимаете ? у меня проблема в сортировке меню
Ответить с цитированием
  #8 (permalink)  
Старый 18.08.2019, 06:31
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 10,716

А зачем сортировать массив? Я же писал - хотите понять/узнать как сортировать html набор, сделайте поиск, на форуме очень много таких вопросов на всякие разные случаи. Вот сразу же подобная тема, причем рони с завидным постоянством отвечает по много раз на такие вопросы. )

https://javascript.ru/forum/misc/678...-stranice.html

То есть сортируется сразу набор. Вы получили собственно карту индексов, по которым хотите отсортировать, отсортировали, а далее то надо сами элементы расставить по этой карте - appendChild(элемент).

Последний раз редактировалось laimas, 18.08.2019 в 06:38.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
mouseover jquery SolomonRei Элементы интерфейса 0 27.11.2018 16:41
Замена стилей класса Павел Турченко Элементы интерфейса 9 30.10.2015 14:24
Бесконечноуровневое меню на CSS ruslan_mart Ваши сайты и скрипты 5 12.01.2015 19:59
Выделение активных пунктов многоуровневого меню на jQuery Letto Элементы интерфейса 2 04.12.2013 13:30
Проблема с аккордионом и меню Tie ExtJS 3 01.09.2011 13:36