2017-08-02 36 views
-4

我想用同一个按钮打开和关闭我的菜单。这是我的代码。用同一个按钮关闭和打开div

<script> 
$('#open-menu').click(function() { 
    $("#mySidenav").css("width" , "250px"); 
    $("#l_m").css({"marginLeft": "250px", "position" : "absolute", "width" : "100%"}); 
    // $(this).attr('id','close-menu'); 
}); 

$('#close-menu').click(function() { 
    $("#mySidenav").css("width" , "0"); 
    $("#l_m").css("marginLeft" , "0"); 
}); 
</script> 

检查此琴:https://jsfiddle.net/uyjogg5e/10/

(我想补充一点,被注释行,但是当我点击它,什么都不会发生)

+2

为什么又提出同样的问题,特别是当它被用工作实例已经回答了。 https://jsfiddle.net/uyjogg5e/11/ –

+0

请在google上发布SO – anu

回答

0

你可以在一个类中设置的CSS属性:

.side-nav-show{ 
    width : 250px; 
} 
.l_m-show{ 
    marginLeft:250px; 
    position:absolute; 
    width:100%; 
} 

然后切换元素上的点击类:

$('#open-menu').click(function() { 
    $("#mySidenav").toggleClass('side-nav-show'); 
    $("#l_m").toggleClass('l_m-show'); 
}); 

Working Demo

+1

问题的正确方法.... – anu

+1

我可以问,为什么在OP昨天提出的问题中已经回答它时回答它? –

+0

我想他试图告诉他应该如何使用提供的代码。 – anu

1
var a = 0; 
$('#open-menu').click(function() { 
    if(a % 2 == 0){ 
     $("#mySidenav").css("width" , "250px"); 
     $("#l_m").css({"marginLeft": "250px", "position": "absolute", "width" : "100%"}); 
    } 
    else{ 
     $("#mySidenav").css("width" , "0"); 
     $("#l_m").css("marginLeft" , "0"); 
    } 
    a++; 
});