繁体   English   中英

用jQuery切换CSS

[英]Toggle CSS with jQuery

$('.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时,可以切换叠加层,还可以在.information overflow:hiddentoggleClass overflow:hidden之间切换。

但是,如果单击.work和THEN .information ,它将破坏toggleClass

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

JQUERY CSS

或切换

CSS:

.hidden {
   overflow: hidden;
}

JQUERY:

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

您可以为此使用toggleClass

用这个

$("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();
});

jQuery代码:

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

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

.hidden {
  overflow: hidden;
}

这个世界

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

上面的解决方案是完美的,但是切换页面溢出条会在网站上造成一些滞后,因为页面宽度会有所不同。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM