Как стать автором
Обновить

Комментарии 17

А я вот выключил Javascript и меню пропало :(

base1.addElem('Текст элемента меню',SomeFunction); — здесь надо не добавлять новый, а подключать тот, который в HTML уже есть.
Хм, да, без яваскрипта оно не работает. Надо сделать так, чтобы оно раскрывалось без него полностью.
Второе предложение немного не понял.
Хм, я из вашего комментария вынес, что стоить изменить скрипт, чтобы он как-бы из микроформата генерировал меню при подключении. Спасибо за идею)
Вот нечто в таком духе:

<ul>
	<li><a href="/">Файл</a></li>
	<li>
		<a href="/">Справка</a>
		<ul>
			<li><a href="/">О программе</a></li>
		</ul>
	</li>
</ul>


А стилями/скриптом все перебрать и повесить события. Причем не желательно запихивать что-то внутрь тега кроме текста.
В принципе отлично. Но я тут вернулся к своей задаче, и вспомнил, что у меня это меню требуется для создания интерфейса для разработки) И там всегда яваскрипт, и важна удобность назначения действий для пунктов меню.
И правда отлично смотрится. Даже как-то жалко время стало свое)
Я его в основном из-за внешнего вида решил привести.
Но тот материал довольно старый. В сравнении с Вашим кодом видно, как подходы к реализации одних и тех же вещей меняются со временем.
не хорошо так делать Создать
li — блочный элемент
a — инлайновый
Инлайновый не должны содержать блочные
Он у меня блочный, хотя я скорее всего список отсюда просто уберу, потому что он не в тему.
1. Конструкция:
<div>
    <a>...</a>
    <ul>
        <a>
            <li><a> ... </a></li>
        </a> 
    </ul>
</div>

ужасна, вставлять в <ul /> — <a /> — а в него <li /> очень не красиво, и не по спецификации.

Почему бы не использовать конструкцию вида:
<ul>
    <li>
        <a>...</a>
        <ul>
            <li>
                <a>...</a>
                ......
            <li>
            ........
        </ul>
    </li>
    ...........
</ul>


2. На практике генерировать меню javascript кодом, как у вас в примере, врят ли потребуется, намного удобнее инициализировать меню, имея XML или JSON структуру, или конструкцию из списков в теле страницы.

1. Спасибо за совет. Так и сделаю.
2. Генерировать для меня удобнее, потому что все равно придется задавать функцию обработчик. Потому что у меня обработчик есть у каждого элемета.
а тут круче dhtmlx.com/docs/products/dhtmlxMenu/
По сути у них подогнанно нормально, картинки аяксом подгружаются и клавиатурные сочетания. На самом деле там ничего сложного нет)
Кстати, там двойная лицензия. Так что мне бы только коммерческая версия бы подошла.
НЛО прилетело и опубликовало эту надпись здесь
Добавил исправленную версию.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории