У меня есть мобильный дизайн для выполнения:Как создать меню аккордеон, для мобильных устройств, где расширитель элементы являются также ссылки
Меню довольно стандартная установка аккордеона.
Он начинает рухнуть.
Нарезание резьбы в любом месте на
A
расширит его, чтобы отобразить подменюA
.Касание где-нибудь на
B
разрушитсяA
и расширитьB
.Нарезание резьбы в любом месте на
A Sub 1
доставит вас по этой ссылке.
Все стандартные до сих пор! Но дополнительная функция заключается в том, что A
сам является страницей, к которой пользователь может получить доступ! Мы должны выполнить этот очень специфический дизайн, поэтому мы не можем добавлять элементы управления расширителя, чтобы отделить ссылку от расширения.
Я изначально использовал простые вложенные списки <ul>
и некоторые тривиальные JS для привязки к событиям onclick. Это было прекрасно для элементов, которые были ссылками OR expanders, но которые развалились на биты, которые были обоими.
Я попытался изменить поведение разоблачает подменю при наведении курсора мыши, чтобы использовать поведение, которое я обнаружил, и описываемая здесь: Tablets hover on first click, click on second click Это делает технически работать, но не очень хорошо, вы не можете прокручивать меню правильно, потому что прикоснувшись вне вашего текущего расширения будет изменен выбор; экспозиция подменю не наводится; он вообще не работает хорошо для телефонов, и на маленьком рабочем столе это совершенно непригодно.
Я искал возраст в Интернете для примера или библиотеки, которая будет просто делать это, но ничего не подходит для того, что мне нужно, и нам дали эту очень специфическую конструкторскую спецификацию.
В настоящее время мое единственное решение будет состоять в том, чтобы реализовать 2 фазы, щелкнув себя в javascript, сохранив текущее состояние элемента в атрибутах данных и прочитав их, прежде чем принимать решение о том, какое действие нужно предпринять при щелчке.
Есть ли лучший способ достичь этого?
= - = - = - = - = - = - = - = - = - = - = - =
См здесь SO сообщений о связанных с ними сценариев для традиционного меню NavBar:
Это скорее комментарий, чем ответ. Удалите этот ответ и переместите его в раздел комментариев. –
То же. Это ничего не добавляет к обсуждению (или к будущему обсуждению). – Brondahl