设计我的导航栏

时间:2012-08-13 19:10:30

标签: jquery html navigation

我创建了这个单击时打开的栏。但是,我只想在点击+时打开它。我有+超链接,但我不知道如何使滑块只响应+并将侧边栏恢复正常(现在它在内容div下移动。请帮助。

    <!DOCTYPE HTML>

<html>
    <head>
        <title>Title</title>
        <link rel="stylesheet" href="style.css">

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">   </script>
    </head>

    <body>

    <div id="wrapper">
        <div id="nav">
        <div id="menu-expand">
        <a href="#" class="closed"><span>+</span></a>
        </div>
        </div>
            <div id="content"></div>
    </div>

    <!-- Scripts -->

<script>
    $(function() {
    $('#nav').click(function() {
        var leftMargin = ($(this).css('margin-left') === '0px') ? '-150px' : '0px';
        $(this).animate({ 'margin-left' : leftMargin }, 500);
    });
});

</script>
    </body>
</html>

1 个答案:

答案 0 :(得分:0)

Click事件通过DOM“冒泡”,在每个父元素上触发,除非使用ev.stopPropagation()

$('#nav').click(function(ev) {
    ev.stopPropagation();
    var leftMargin = ($(this).css('margin-left') === '0px') ? '-150px' : '0px';
    $(this).animate({ 'margin-left' : leftMargin }, 500);
});