如果主菜单项有下拉菜单,如何使其无法单击-TYPO3

时间:2018-08-08 08:38:06

标签: typo3 typoscript

我不是TypoScript的新手,我正在TYPO3中制作一个下拉菜单,该菜单工作得很好。

当用户单击菜单项(带有表示该菜单项具有下拉菜单的汉堡图标)时,将打开一个下拉菜单。我想使菜单项本身不可单击,它只能打开一个下拉菜单。以下是我的代码,我将不胜感激任何想法或帮助。现在,如果我单击菜单项“打开一个新页面(应该只打开一个下拉菜单)”。

lib.mobileNav = HMENU
lib.mobileNav {
    entryLevel = 0
    1 = TMENU
    wrap =  <nav id="mobile-menu" class="main-nav"><ul> | </ul></nav>
    doNotLinkIt = 1
    1 {
        expAll = 1
        wrap = <ul class="1">|</ul>
        NO = 1
        NO {
              wrapItemAndSub = <li class="level-1">|</li>
              ATagTitle.field = title     
        }
        IFSUB < .NO
        IFSUB = 1
        IFSUB {
            wrapItemAndSub = <li class="level-1 dropdown">|</li>
        }
        ACT < .NO
        ACT = 1
        ACT {
            wrapItemAndSub = <li class="level-1 active">|</li>
            ATagParams = class="level-1 active"
        }
        ACTIFSUB < .NO
        ACTIFSUB = 1
        ACTIFSUB {
            wrapItemAndSub = <li class="dropdown active level-1">|</li>

        }
    }
    2 = TMENU
    2 {
        wrap = <ul class=" level-2" role="menu">|</ul>
        NO = 1
        NO {
            wrapItemAndSub = <li class="level-2">|</li>
            ATagParams = class="level-2"
            stdWrap.htmlSpecialChars = 1
        }
        ACT = .NO
        ACT {
            wrapItemAndSub = <li class="active level-2">|</li>
            ATagParams = class="active level-2"
        }
    }
}

2 个答案:

答案 0 :(得分:1)

参数doNotLinkIt的级别错误,它用于TMENU项,而不是整个HMENU或整个TMENU。您可以看到参考文献here in TSREF

下面是应该工作的菜单,我对其进行了一些排序,以使其更易于阅读。

lib.mobileNav = HMENU
lib.mobileNav {

    entryLevel = 0
    wrap =  <nav id="mobile-menu" class="main-nav"><ul> | </ul></nav>

    1 = TMENU
    1 {
        expAll = 1
        wrap = <ul class="1">|</ul>

        NO = 1
        NO {
          wrapItemAndSub = <li class="level-1">|</li>
          ATagTitle.field = title
          doNotLinkIt = 1
        }

        IFSUB < .NO
        IFSUB = 1
        IFSUB {
          wrapItemAndSub = <li class="level-1 dropdown">|</li>
        }

        ACT < .NO
        ACT = 1
        ACT {
          wrapItemAndSub = <li class="level-1 active">|</li>
          ATagParams = class="level-1 active"
        }

        ACTIFSUB < .NO
        ACTIFSUB = 1
        ACTIFSUB {
          wrapItemAndSub = <li class="dropdown active level-1">|</li>
        }
    }

    2 = TMENU
    2 {
        wrap = <ul class=" level-2" role="menu">|</ul>

        NO = 1
        NO {
           doNotLinkIt = 1
           wrapItemAndSub = <li class="level-2">|</li>
           ATagParams = class="level-2"
           stdWrap.htmlSpecialChars = 1
        }

        ACT < .NO
        ACT {
            wrapItemAndSub = <li class="active level-2">|</li>
            ATagParams = class="active level-2"
        }
    }
}

答案 1 :(得分:0)

实际上,没有子项目的项目应保持可单击状态或应将其删除,因为否则您将拥有根本无法单击的菜单项。

因此,带有可点击项和带有子项下拉菜单的不可点击项的菜单代码如下:

lib.mobileNav = HMENU
lib.mobileNav {

    entryLevel = 0
    wrap =  <nav id="mobile-menu" class="main-nav"><ul> | </ul></nav>

    1 = TMENU
    1 {
        expAll = 1
        wrap = <ul class="1">|</ul>

        NO = 1
        NO {
            wrapItemAndSub = <li class="level-1">|</li>
            ATagTitle.field = title
        }

        IFSUB < .NO
        IFSUB {
            wrapItemAndSub = <li class="level-1 dropdown">|</li>
            doNotLinkIt = 1
        }

        ACT < .NO
        ACT {
            wrapItemAndSub = <li class="level-1 active">|</li>
            ATagParams = class="level-1 active"
        }

        ACTIFSUB < .NO
        ACTIFSUB {
            wrapItemAndSub = <li class="dropdown active level-1">|</li>
            doNotLinkIt = 1
        }
    }

    2 = TMENU
    2 {
        wrap = <ul class=" level-2" role="menu">|</ul>

    NO = 1
    NO {
       wrapItemAndSub = <li class="level-2">|</li>
       ATagParams = class="level-2"
       stdWrap.htmlSpecialChars = 1
    }

    ACT < .NO
    ACT {
        wrapItemAndSub = <li class="active level-2">|</li>
        ATagParams = class="active level-2"
    }
}

}

相关问题