2011-05-18 5 views
0

Я не знаю, с чего начать. Я использую Wordpress, который автоматически генерирует списки для пунктов меню, поэтому я не могу перекодировать указатель мыши в html. Как я могу сделать списки в раскрывающихся списках?Выпадающий список Javascript для динамически сгенерированных списков

Я попытался изменить учебник и использовать что-то вроде этого, но он не работает. Я не уверен, как динамически захватывать эти меню и изменять их. Лил помощь ?:

window.onload = initAll; 

function initAll() { 
    var allLinks = document.getElementsByTagName("li"); 

    for (var i=0; i<allLinks.length; i++) { 
     if (allLinks[i].className.indexOf("menu-item") > -1) { 
      allLinks[i].onmouseover = toggleMenu; 
     } 
    } 
} 

function toggleMenu() { 
    document.getElementById(thisMenuName).style.display = "block"; 

} 

ЛУ, порожденных выглядеть следующим образом:

<div class="menu-header"><ul id="menu-top-nav" class="menu"><li id="menu-item-82" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-4 current_page_item menu-item-82"><a href="http://localhost/wordpress/">HOME</a></li> 
<li id="menu-item-83" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-83"><a href="http://localhost/wordpress/about-ql/">About QL+</a> 
<ul class="sub-menu"> 
    <li id="menu-item-86" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-86"><a href="http://localhost/wordpress/about-ql/ql-laboratory/">QL+ LABORATORY</a></li> 
    <li id="menu-item-87" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-87"><a href="http://localhost/wordpress/about-ql/ql-leadership/">QL+ LEADERSHIP</a></li> 
    <li id="menu-item-84" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-84"><a href="http://localhost/wordpress/about-ql/a-history-of-ql/">A HISTORY OF QL+</a></li> 
    <li id="menu-item-85" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-85"><a href="http://localhost/wordpress/about-ql/fighting-for-life-the-film/">FIGHTING FOR LIFE, THE FILM</a></li> 
</ul> 
</li> 
<li id="menu-item-88" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-88"><a href="http://localhost/wordpress/our-work/">Our Work</a> 
<ul class="sub-menu"> 
    <li id="menu-item-93" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-93"><a href="http://localhost/wordpress/our-work/what-is-a-ql-challenge/">WHAT IS A QL+ CHALLENGE?</a></li> 
    <li id="menu-item-92" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-92"><a href="http://localhost/wordpress/our-work/successful-ql-projects/">SUCCESSFUL QL+ PROJECTS</a></li> 
    <li id="menu-item-90" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-90"><a href="http://localhost/wordpress/our-work/projects-in-development/">PROJECTS IN DEVELOPMENT</a></li> 
    <li id="menu-item-91" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-91"><a href="http://localhost/wordpress/our-work/submit-a-ql-challenge/">SUBMIT A QL+ CHALLENGE</a></li> 
    <li id="menu-item-89" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-89"><a href="http://localhost/wordpress/our-work/hear-from-ql-supporters/">HEAR FROM QL+ SUPPORTERS</a></li> 
</ul> 
</li> 
<li id="menu-item-94" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-94"><a href="http://localhost/wordpress/help-ql-help-our-heroes/">WAYS TO GIVE</a> 
<ul class="sub-menu"> 
    <li id="menu-item-95" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-95"><a href="http://localhost/wordpress/help-ql-help-our-heroes/donate-to-ql/">DONATE TO QL+</a></li> 
    <li id="menu-item-99" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-99"><a href="http://localhost/wordpress/help-ql-help-our-heroes/sponsorships/">SPONSORSHIPS</a></li> 
    <li id="menu-item-96" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-96"><a href="http://localhost/wordpress/help-ql-help-our-heroes/get-involved-volunteer/">VOLUNTEER!</a></li> 
    <li id="menu-item-97" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-97"><a href="http://localhost/wordpress/help-ql-help-our-heroes/ql-partners/">QL+ PARTNERS</a></li> 
    <li id="menu-item-98" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-98"><a href="http://localhost/wordpress/help-ql-help-our-heroes/ql-resources/">QL+ RESOURCES</a></li> 
</ul> 
</li> 
<li id="menu-item-100" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-100"><a href="http://localhost/wordpress/whats-happening/">WHAT&#8217;S HAPPENING</a> 
<ul class="sub-menu"> 
    <li id="menu-item-109" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-109"><a href="http://localhost/wordpress/whats-happening/press-releases/">Press Releases</a></li> 
    <li id="menu-item-103" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-103"><a href="http://localhost/wordpress/whats-happening/ql-in-the-news/">QL+ IN THE NEWS</a></li> 
    <li id="menu-item-112" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-112"><a href="http://localhost/wordpress/whats-happening/upcoming-events/">UPCOMING EVENTS</a></li> 
    <li id="menu-item-114" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-114"><a href="http://localhost/wordpress/whats-happening/special-events/">PREVIOUS EVENTS</a></li> 
</ul> 
</li> 
<li id="menu-item-105" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-105"><a href="http://localhost/wordpress/contact-ql/">CONTACT QL+</a></li> 
</ul></div> 

ответ

0

Вот простой CSS версии. Он, к сожалению, полагается на псевдо-класс «hover», который не поддерживается в тегах не < a> в IE 6. Для этого вам понадобится JavaScript.

Демо: http://jsfiddle.net/NHvmp/1/

 
#menu-top-nav { 
    border:1px solid red; 
} 

#menu-top-nav li { 
    position:relative; 

} 

#menu-top-nav ul.sub-menu { 
    border:1px solid green; 
    background:yellow; 
    display:none; 
    position:absolute; 
    top:0px; 
    left: 100px; 
    z-index:1; 
} 

#menu-top-nav > li:hover ul.sub-menu { 
    display:block; 
} 
Смежные вопросы