JavaScript Dropdown Nav的问题

时间:2013-05-09 12:12:03

标签: javascript html css

我正在使用我在谷歌搜索后找到的JavaScript下拉导航菜单,我已经设法按照我想要的方式设置它。但是,在验证我的网站后,我得到了ul标记的错误(错误:元素ul在此上下文中不允许作为元素ul的子元素。(从此子树中抑制更多错误。 ))。我不仅得到了这个错误,导航也不会按照它应该的方式工作。我尝试了ulli标记的不同变体,并且移动了一些东西,我仍然无法让它正常工作。

<div class="nav">
<ul id="menu" class="menu">
    <li><a href="#">One</a>
        <ul>

    <li class="submenu">
        <a href="#">One</a>
    <ul>
        <li><a href="#">One</a></li>
        <li><a href="#">Two</a></li>
        <li><a href="#">Three</a></li>
    </ul>
            </li>

    <li class="submenu">
        <li><a href="#">Two</a></li>
            <ul>
                <li><a href="#">One</a></li>
                <li><a href="#">Two</a></li>
                <li><a href="#">Three</a></li>
            </ul>   
        </ul>
    </li>

    <li><a href="#">Two</a>
        <ul> 
    <li class="submenu"><a href="#">One</a></li>
    <li class="submenu"><li><a href="#">Deny</a></li>
                <ul>
                    <li class="noborder"><a href="#">One</a></li>
                    <li><a href="#">Two</a></li>
                    <li><a href="#">Three</a></li>
                </ul> 
        </ul>
    </li>

    <li><a href="#">Three</a>
        <ul>

    <li class="submenu">
        <a href="#">One</a>
            </li> 
        </ul>
    </li>

    <li><a href="#">Four</a>
        <ul>

    <li class="submenu">
        <a href="#">One</a>
            </li> 
        </ul>
    </li>
</ul>

2 个答案:

答案 0 :(得分:1)

我不确定这是你的java脚本代码的问题。但是这些html标签的写作不匹配也可能导致这些问题。请再次检查打开和关闭标签,确保它们处于正确位置。当我浏览你的HTML代码时,我发现标签中存在一些不匹配。一个是 - 您的第一个菜单项两个写在两个li / li标记之间。但是您的第一个一个菜单项在这些li / li标签之间

答案 1 :(得分:1)

关闭您的父div标签,看看是否有帮助

也是这个......

 <li class="submenu">
        <li><a href="#">Two</a></li>
            <ul>
                <li><a href="#">One</a></li>
                <li><a href="#">Two</a></li>
                <li><a href="#">Three</a></li>
            </ul>   
        </ul>
    </li>

...可能需要重新工作,因为您在创建子ul标记之前嵌套了li标记。您只需要学习如何正确嵌套ul和li标签。这是我在stackoverflow上找到的discussion,它讨论了类似的问题。

一旦你的HTML正确,javascript过程应该更容易管理。

希望有所帮助。