Вопрос по горизонтальному меню, есть необходимость на корпоративном портале чтобы это меню имело специфический дизайн вывод такой:
Код |
---|
<ul>
<li id="MenuLink_1_Current"><a href="#null" ></a></li>
<li id="MenuLink_2"><a href="#null" ></a>
<div class="Submenu">
<ul>
<li><a href="#null">Официально</a>
<div class="OtherSubmenuList">
<div class="OtherSubmenu">
<ul class="SecondtListUl">
<li><a href="#null">Выпадающее меню 3-го уровня</a></li>
<li><a href="#null">Выпадающее меню 3-го уровня 2</a></li>
<li><a href="#null">Выпадающее меню 3-го уровня 3</a></li>
<li><a href="#null">Выпадающее меню 3-го уровня 4</a></li>
<li><a href="#null">Выпадающее меню 3-го уровня 5</a></li>
<li><a href="#null">Выпадающее меню 3-го уровня 6</a></li>
<li><a href="#null">Выпадающее меню 3-го уровня 7</a></li>
</ul>
</div>
</div>
</li>
<li><a href="#null">О компании</a></li>
<li><a href="#null">Наша жизнь</a></li>
<li><a href="#null">Новости отрасли</a></li>
<li><a href="#null">Календарь событий</a></li>
<li><a href="#null">Фотогалерея</a></li>
<li><a href="#null">Архив видео</a></li>
<li><a href="#null">Карьера, вакансии</a></li>
<li><a href="#null">Контакты</a></li>
<li><a href="#null">Реквизиты</a></li>
</ul>
</div>
</li>
</ul>
|
Близко к такому выводу есть в стандартном примере меню:
Код |
---|
<?
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
if (empty($arResult))return;
?>
<ul id="horizontal-multilevel-menu">
<?
$previousLevel = 0;
$firstRoot = false;
foreach($arResult as $itemIdex => $arItem):?>
<?if ($previousLevel && $arItem["DEPTH_LEVEL"] < $previousLevel):?>
<?=str_repeat(" </ul></li>", ($previousLevel - $arItem["DEPTH_LEVEL"]));?>
<?endif?>
<?if ($arItem["IS_PARENT"]):?>
<?if ($arItem["DEPTH_LEVEL"] == 1):?>
<li class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>">
<?if ($itemIdex > 0):?>
<div class="root-separator"></div>
<?endif?>
<a href="<?=$arItem["LINK"]?>" class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>">
<?=$arItem["TEXT"]?>
</a>
<ul>
<?else:?>
<li<?if ($arItem["SELECTED"]):?> class="item-selected"<?endif?>><a href="<?=$arItem["LINK"]?>" class="parent">
<?=$arItem["TEXT"]?>
</a>
<ul>
<?endif?>
<?else:?>
<?if ($arItem["PERMISSION"] > "D"):?>
<?if ($arItem["DEPTH_LEVEL"] == 1):?>
<li class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>">
<?if ($itemIdex > 0):?>
<div class="root-separator"></div>
<?endif?>
<a href="<?=$arItem["LINK"]?>" class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>">
<?=$arItem["TEXT"]?>
</a></li>
<?else:
$class = "";
if ($arItem["SELECTED"])
$class .= "item-selected";
if (!isset($arResult[$itemIdex+1]) || (isset($arResult[$itemIdex+1]) && $arResult[$itemIdex+1]["DEPTH_LEVEL"] != $arResult[$itemIdex]["DEPTH_LEVEL"]))
$class .= " item-last";
if (strlen($class) > 0)
$class = ' class="'.$class.'"';
?>
<li<?=$class?>><a href="<?=$arItem["LINK"]?>">
<?=$arItem["TEXT"]?>
</a></li>
<?endif?>
<?else:?>
<?if ($arItem["DEPTH_LEVEL"] == 1):?>
<li class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>">
<?if ($itemIdex > 0):?>
<div class="root-separator"></div>
<?endif?>
<a href="" class="<?if ($arItem["SELECTED"]):?>root-item-selected<?else:?>root-item<?endif?>" title="<?=GetMessage("MENU_ITEM_ACCESS_DENIED")?>">
<?=$arItem["TEXT"]?>
</a></li>
<?else:?>
<li><a href="" class="denied" title="<?=GetMessage("MENU_ITEM_ACCESS_DENIED")?>">
<?=$arItem["TEXT"]?>
</a></li>
<?endif?>
<?endif?>
<?endif;
$previousLevel = $arItem["DEPTH_LEVEL"];
if ($arItem["DEPTH_LEVEL"] == 1)
$firstRoot = true;
?>
<?endforeach;
if ($previousLevel > 1)
echo str_repeat("</ul></li>", ($previousLevel-1));
?>
</ul>
<div class="menu-clear-left"></div>
|
Но совершенно не понятно как сдедать так чтобы li - ловили ЙД и куда подставить вложенные дивы так чтобы они попадали в структуру. К сожалению с ПХП знаком очень поверхностно. Буду благодарен за помощь.