Регистрация
Вход через соцсети
Восстановление пароля

Оформление первого и последнего пунктов меню

Новый топик
Страницы: 1  |  2  |  3
11.09.2012, 13:06
Ответить | Цитировать
Heidel

Зарегистрирован:
2012-06-27
Сообщений: 65

Код для прописывания класса первому пункту меню не срабатывает, прописывается
класс только для последнего пункта.
Код:
<?php
$horizontal_menu['prefix'] = "<div class=\"page_margins\"><div id=\"nav\"><div class=\"hlist\"><ul>";
$horizontal_menu['suffix'] = "</ul></div></div></div>";
$horizontal_menu['active'] = "<li class=\"active\" \".(\$i+1==\$data_count?' class=\"last\"':null)( \$i==0?' class=\"first\"':null).\">%NAME</li>";
$horizontal_menu['unactive'] = "<li \".(\$i+1==\$data_count?' class=\"last\"':null)(\$i==0?' class=\"first\"':null).\"><a href=\"%URL\">%NAME</a></li>";
?>

Как сделать так, чтобы оба условия проверялись и отрабатывали одновременно?
11.09.2012, 13:46
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Цитата:
$horizontal_menu['unactive'] = "<li \".(\$i+1==\$data_count?' class=\"last\"':null)тут_должна_быть_точка(\$i==0?' class=\"first\"':null).\"><a href=\"%URL\">%NAME</a></li>";


Temet nosce...
11.09.2012, 14:04
Ответить | Цитировать
Heidel

Зарегистрирован:
2012-06-27
Сообщений: 65

С точкой тоже уже пробовала, не срабатывает. Только класс last добавляется.
11.09.2012, 14:20
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

а так?
Цитата:
$horizontal_menu['unactive'] = "<li \".((\$i+1)==\$data_count?' class=\"last\"': (\$i==0?' class=\"first\"':null)).\"><a href=\"%URL\">%NAME</a></li>";


Temet nosce...
11.09.2012, 14:37
Ответить | Цитировать
Heidel

Зарегистрирован:
2012-06-27
Сообщений: 65

Нет, все равно получается, отрабатывает только то условие, которое стоит первым по порядку,
если прописано так
Код:
$horizontal_menu['unactive'] = "<li class=\"active\" \".(\$i+1==\$data_count?' class=\"last\"': ( \$i==0?' class=\"first\"':null)).\">%NAME</li>";

то класс last добавится, а класс first - нет.

Если прописать так
Код:
$horizontal_menu['unactive'] = "<li \".(\$i==0?' class=\"first\"': (\$i+1==\$data_count?' class=\"last\"':null)).\"><a href=\"%URL\">%NAME</a></li>";

то класс first добавится, а класс last - нет.
11.09.2012, 14:52
Ответить | Цитировать
Heidel

Зарегистрирован:
2012-06-27
Сообщений: 65

Почему-то в таком виде в каждый пункт вставляется класс first

Код:
$horizontal_menu['active'] = "<li class=\"active\" ".($i+1==$data_count?' class="last"':null).($i==0?' class="first"':null).">%NAME</li>";
$horizontal_menu['unactive'] = "<li ".($i+1==$data_count?' class="last"':null).($i==0?' class="first"':null).">%NAME</li>";
11.09.2012, 14:56
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Какая версия неткета и какой ф-ей вызываете шаблон?

Temet nosce...
11.09.2012, 14:57
Ответить | Цитировать
Heidel

Зарегистрирован:
2012-06-27
Сообщений: 65

Неткат 5
<?=nc_browse_level(0, $horizontal_menu)?>
11.09.2012, 15:26
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

у меня на 5.0 вот этот код работает:
Цитата:
$main_menu[0]['unactive'] = "<li \".(\$i==0?'first':null).\"><a href='%URL'>%NAME</a></li>";


если и это не заработает - ну значит проблема в чем-то другом, надо смотреть уже

Temet nosce...
11.09.2012, 15:33
Ответить | Цитировать
Heidel

Зарегистрирован:
2012-06-27
Сообщений: 65

И он у вас вставляет класс first только в первый пункт меню или во все?
11.09.2012, 15:34
Ответить | Цитировать
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

только в первый пункт как и должно быть.
результат смотрел на титульной странице

Temet nosce...
198 196 2013-04-03 13:27:10 12580
Страницы: 1  |  2  |  3
Описание проекта