如何在页面加载时使用javascript / jquery滑动/打开特定菜单项?

时间:2012-01-22 14:43:28

标签: javascript jquery menu pageload

我是java和jquery脚本的新手,我已经设法学习如何在项目鼠标点击上打开菜单,但如何在页面加载时打开特定菜单?

我正在使用它:

<!-- menu -->
<div id="menuone">
    <ul id="menu">
        <li>
            <a href="#">Home</a>
        </li>
        <li>
            <a>About</a>
            <ul>
                <li><a href="#">one</a></li>
                <li><a href="#">two</a></li>
                <li><a href="#">three</a></li>
            </ul>
        </li>
        <li>
            <a>Projects</a>
            <ul>
                <li><a href="#">project1</a></li>
                <li><a href="#">project2</a></li>
                <li><a href="#">project3</a></li>
            </ul>
        </li>
    </ul>
</div>
<!-- menu end -->

我点击的javascript是这样的:

function initMenu() {
  $('#menu ul').hide();
  $('#menu li a').click(
    function() {
         $(this).next().slideToggle('normal');               
      }
    );
  } 
 $(document).ready(function() {initMenu();});

但我的任务是:如何在页面加载时打开特定项目?如何打开菜单项2(例如“约”)或菜单菜单3(“项目”)等...?

2 个答案:

答案 0 :(得分:2)

实际上非常容易;

$('#menu li a:eq(1)').trigger('click'); //open "about"
$('#menu li a:eq(2)').trigger('click'); //open "projects"
希望我能帮助

答案 1 :(得分:1)

为您的a标记添加ID,例如

<div id="menuone">
<ul id="menu">
    <li>
        <a href="#" id="home">Home</a>
    </li>
    <li>
        <a id="about">About</a>
        <ul>
            <li><a href="#">one</a></li>
            <li><a href="#">two</a></li>
            <li><a href="#">three</a></li>
        </ul>
    </li>
    <li>
        <a id="projects">Projects</a>
        <ul>
            <li><a href="#">project1</a></li>
            <li><a href="#">project2</a></li>
            <li><a href="#">project3</a></li>
        </ul>
    </li>
</ul>
</div>

然后将您选择的ID传递给您的函数

// Pay attention to pass id to function
function initMenu(id)
{
    $('#menu ul').hide();
    $('#menu li a').click(
    function() {
        $(this).next().slideToggle('normal');               
    });

    // Add following lines
    if (typeof(id) != 'undefined')
    {
        $('#'+id).click();
    }
} 

$(document).ready(function() {initMenu('projects');});

然后改变你可以使用

$(document).ready(function() {initMenu('about');});