单击时切换功能

时间:2014-08-15 19:23:03

标签: javascript jquery html function toggle

我正在使用函数来点击菜单,但由于jQuery 1.9已弃用,因此无法使其正常工作。

我不知道如何设法工作。

我想点击菜单img一次并展开菜单,下次我这样做会再次隐藏。

这是我的代码:

$(document).ready(function(){
$('.menu img').click(function(){
    var wWidth = $(window).width();
    var wHeight = $(window).height()
    $('.menu').animate({width: wWidth + 'px', height: wHeight + 'px'}, 500);
    $('.menu').toggleClass('menu_expanded');
});

提前致谢。

以下是JSfiddle as request:http://jsfiddle.net/czef8ofb/

2 个答案:

答案 0 :(得分:1)

您可以尝试使用以下代码 - .hasClass()检查您的导航元素是否已分配了.menu_expanded类,并相应地显示/隐藏菜单。

$(document).ready(function(){
    $('.menu img').click(function(){
        var wWidth = $(window).width();
        var wHeight = $(window).height()
        if(!$('.menu').hasClass('menu_expanded')){
            $('.menu').animate({width: wWidth + 'px', height: wHeight + 'px'}, 500);
        }else{
            //code to hide menu again
        }
        $('.menu').toggleClass('menu_expanded');
    });
});

答案 1 :(得分:0)

根据jQuery文档:

  

此方法签名在jQuery 1.8中已弃用,并在jQuery 1.9中删除。 jQuery还提供了一个名为.toggle()的动画方法,可以切换元素的可见性。是否触发动画或事件方法取决于传递的参数集。

所以,请改用这个:animation method .toggle()