2
$('.work').click(function(e){
    $('.information-overlay').fadeOut();
    $('.work-overlay').fadeToggle();
    $('body').toggleClass('overflow');
    e.preventDefault();

});

$('.information').click(function(e){
    $('.work-overlay').fadeOut();
    $('.information-overlay').fadeToggle();
    $('body').toggleClass('overflow');
    e.preventDefault();

});

我有以下代码可以切换叠加层,何时.information单击以及overflow:hiddentoggleClass.

但是,如果我单击.work然后.information,它会破坏toggleClass.

4

6 回答 6

5
$("body").css("overflow", "hidden");

jQuery CSS

或切换

CSS:

.hidden {
   overflow: hidden;
}

查询:

$("body").toggleClass("hidden");   
于 2013-08-27T13:42:26.143 回答
3

您可以为此使用toggleClass 。

于 2013-08-27T13:43:10.010 回答
1

用这个

$("body").css("overflow", "hidden");

添加切换功能使用http://api.jquery.com/toggleClass/

css

.b_overflow { overflow:hidden; }'

js

$('body').toggleClass('b_overflow');

OP评论后更新

$('.work').click(function(e){
    $('.information-overlay').fadeOut();
    $('.work-overlay').fadeToggle();
    if($(this).css('display') =='block'){
        $(this).css('overflow','scroll');
    }else{
        $(this).css('overflow','hidden');
    }
    e.preventDefault();
});
于 2013-08-27T13:42:49.063 回答
0

这将世界

#("body,html").css("overflow", "hidden");

上述解决方案是完美的,但切换身体溢出栏会在网站上产生一点延迟,因为页面宽度会有所不同。

于 2013-08-27T13:45:41.947 回答
0

jQuery代码:

$("body").toggleClass("hidden");

然后在你的 CSS 中创建一个类:

.hidden {
  overflow: hidden;
}
于 2013-08-27T13:45:14.557 回答
-1

用于$('body').toggleClass('overflow-hidden')切换具有相应 CSS 样式的 CSS 类

于 2013-08-27T13:44:19.357 回答