Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   классы для пунктов меню (http://forum.typo3.ru/showthread.php?t=1810)

Tod 15.09.2006 18:50

классы для пунктов меню
 
Можно как-то для каждого отдельного пункта меню прописать свой класс, допустим первый пунтк - класс1, второй - класс2.
И еще чтобы выводился только класс, без пункта меню... например конструкция типа <div class="smth"></div>, а не <div class="smth"> | </div>, как это обычно бывает.

Valery Romanchev 15.09.2006 20:40

Цитата:

Сообщение от Tod
Можно как-то для каждого отдельного пункта меню прописать свой класс, допустим первый пунтк - класс1, второй - класс2.

без проблем

Код HTML:

10 = HMENU
  10.1 = TMENU
  10.1 {
      noBlur = 1
      expAll=1
    NO {
      subst_elementUid = 1
      allWrap = <li>|<ul id="code-{elementUid}">
      wrapItemAndSub = |</ul></li>
      ATagTitle.field = description // title
      ATagParams = id="mn-{elementUid}"
      stdWrap.wrap=<nobr>|</nobr>
    }
    ACT < .NO
    ACT = 1
    ACT.allWrap = <li class="act" >
|<ul id="code-{elementUid}">
  ACT.wrapItemAndSub = |</ul></li> 
   
  }

Цитата:

И еще чтобы выводился только класс, без пункта меню... например конструкция типа <div class="smth"></div>, а не <div class="smth"> | </div>, как это обычно бывает
это не понял... надо TSref смотреть - там наверняка что-то подойдет.
doNotLinkIt или wrap ы всякие

Tod 15.09.2006 23:39

Valery Romanchev, спасибо в который раз.
В общем, для решения требуемой задачи был использован такой TS код:
Код:

lib.mymenu = HMENU
lib.mymenu.1 = TMENU
lib.mymenu.1 {
 expAll = 1
 noBlur = 1
 NO{
 subst_elementUid = 1
 allWrap = <tr valign="top"><td valign="top"><div class="menu{elementUid}"> | </div></td></tr>
 stdWrap.wrap=<!-- | -->
 }
 ACT = 1
 ACT{
 stdWrap.wrap=<!-- | -->
 subst_elementUid = 1
 allWrap = <tr valign="top"><td valign="top"><div class="menu{elementUid}"></div></td></tr>
 }
}

В результате для неактивных пунктов меню выводится ссылка на нужную страницу без самого текста, а в КСС для каждого класса прописана своя картинка. Для активного пункта нет ссылки, и поэтому выводится другое изображение.

are 06.12.2006 14:44

на сколько я понял из приведенного выше кода
вместо elementUid подставляется id странички?

т.е если делать перенос сайта, или удалить и добавить новую страницу, то нумерация может поменяться

а как сделать, чтобы нумерация всегда шла строго по возрастанию?
i++

мне бы хотелось иметь такую структуру

<div class="color_1">Level menu 1</div>

<div class="color_2">Level menu 2</div>
- <div class="color_2">Level menu 2.1</div>
- <div class="color_2">Level menu 2.2</div>

<div class="color_3">Level menu 3</div>

мне это нужно для рацветки меню
(меню1 - имеет color1)
(меню2 и подменю меню2.1.. - имеет color2)
и тп

это можно реализовать через типоскрипт?

Tod 06.12.2006 15:05

да, там у меня в меню все строго без возможности добавления/удаления.
то, что тебе надо через TS вполне реализуемо. Не знаю как сделать это "красиво", но можно "в лоб" - попробовать через PIDinRootline.

are 24.09.2008 08:50

что я делаю не так?

typo3 4.2.1

Код:

temp.MENU {
        10 = HMENU
       
        10.1 = TMENU
        10.1.wrap = <ul id="nav">|</ul>

        10.1 {
            expAll = 1

                noBlur = 1
                NO{
subst_elementUid = 1
                        wrapItemAndSub = <li id="code-{elementUid}">|</li>
                    #    allWrap =  |

                }
                ACT = 1
                ACT {
                        subst_elementUid = 1
                        wrapItemAndSub = <li class="active" id="code-{elementUid}">|</li>
                        allWrap =  |
                }
                CUR = 1
                CUR {
                        subst_elementUid = 1
                        wrapItemAndSub = <li class="current" id="code-{elementUid}">|</li>
                        allWrap =  |
                }
                IFSUB = 1
                IFSUB {
                        subst_elementUid = 1
                        wrapItemAndSub = <li class="open" id="code-{elementUid}">|</li>
                          allWrap =  |

                }
                ACTIFSUB = 1
                ACTIFSUB {
                        subst_elementUid = 1
                        wrapItemAndSub = <li class="active" id="code-{elementUid}">|</li>
                        allWrap =  |

                }
                CURIFSUB = 1
                CURIFSUB {
                        subst_elementUid = 1
                        wrapItemAndSub = <li class="active" id="code-{elementUid}">|</li>
                        allWrap =  |

                }
               
        }
        10.2 = TMENU
        10.2.wrap = <ul>|</ul>
        10.2 {                         
                expAll = 1
                noBlur = 1
                NO{
                        wrapItemAndSub = <li>|</li>
                }
                ACT = 1
                ACT {
                        wrapItemAndSub = <li class="active">|</li>
                }
                CUR = 1
                CUR {
                        wrapItemAndSub = <li class="active">|</li>
                }
                IFSUB = 1
                IFSUB {
                        wrapItemAndSub = <li class="open">|</li>

                }
               
        }
        10.3 = TMENU
        10.3.wrap = <ul>|</ul>
        10.3 {
                expAll = 1
                noBlur = 1
                NO{
                        wrapItemAndSub = <li>|</li>
                }
                ACT = 1
                ACT {
                        wrapItemAndSub = <li class="active">|</li>
                }
                CUR = 1
                CUR {
                        wrapItemAndSub = <li class="active">|</li>
                }
                IFSUB = 1
                IFSUB {
                        wrapItemAndSub = <li class="open">|</li>

                }
               
        }


}

менюшка рисуется замечательно,
но в коде вижу id="code-{elementUid}" вместо id="code-123"

Lucifer 03.05.2009 22:55

+1
та же проблема с меню


Часовой пояс GMT +4, время: 18:23.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot