jQuery off canvas无法正常工作

时间:2014-01-14 15:20:04

标签: javascript jquery

我有一个非画布功能设置,我无法使其正常工作。

尝试关闭时,它不会滑回左侧。当我使用250px而不是90%时,它工作正常,但我需要百分比!

http://jsfiddle.net/3Wdby/

$(document).ready(function () {
    $('#push, #close').click(function () {
        var $navigacia = $('body, #slide-menu'),
            val = $navigacia.css('left') === '90%' ? '0px' : '90%';
        $navigacia.animate({
            left: val
        }, 300)    
    });    
});

2 个答案:

答案 0 :(得分:4)

切换if语句以检查它是否为0px而不是90%,因为当您查看它是否为90%时它将以像素为单位返回

$(document).ready(function () {
    $('#push, #close').click(function () {
        console.log($('body, #slide-menu').css('left'));
        var $navigacia = $('body, #slide-menu'),
            val = $navigacia.css('left') === '0px' ? '90%' : '0px';
        $navigacia.animate({
            left: val
        }, 300)
    });
});

DEMO

答案 1 :(得分:1)

您无法测试百分比,而是应该反转if语句:

val = $navigacia.css('left') === '0px' ? '90%' : '0';

测试宽度是否为0,如果为0,则将其设置为90%。当您下次单击时,因为宽度不为0,它会将其设置为0。