jquery - 使用 jQuery .addClass 和 .removeClass 的 CSS3 过渡

标签 jquery html css

我有一个很大的主导航面板,我想在它部署(展开)时制作动画。

我正在使用 jQuery 通过添加/删除可见/隐藏类来触发它的可见性。

我必须设置延迟时间才能应用隐藏类,因为触发器是面板 div 之外的按钮。 (如果我在按钮上使用鼠标悬停,一旦你推出面板就会消失)

代码是这样的

$(document).ready(function() {
    $('#menu-item-9').click(function(){
        $('#repair-drop').removeClass('hidden');
        $('#repair-drop').addClass('visible');
    });
$('#repair-drop').on('mouseleave', function(e) {
    setTimeout(function() {
        $('#repair-drop').removeClass('visible').addClass('hidden');
    }, 600);        

});
});

我的CSS如下

.hidden{
    max-height: 0px;
    -webkit-transition: max-height 0.8s;
    -moz-transition: max-height 0.8s;
    transition: max-height 0.8s;

}
.visible{
    max-height: 500px;  
}

过渡效果根本不起作用。

最佳答案

我厌倦了这个问题,最好使用动画:

.container .element.animation  {
    animation: SHW .5s;
    animation-fill-mode: both
}
@keyframes SHW {
    from {
        transform:scale(0.7);
        opacity:0
    }
    to {
        transform: scale(1);
        opacity:1
    }
}

仅添加到 .element 类 .animation 及其工作:

$('.container .element').addClass('animation');

关于jquery - 使用 jQuery .addClass 和 .removeClass 的 CSS3 过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21148876/

相关文章:

javascript - 为什么我的按钮在我点击时不隐藏文本区域

javascript - 使用 jquery 定位类的所有实例的第一个子级

javascript - rxjs Observable 相对于 DOM 事件有什么优点?

css - 如何对齐下面的代码

javascript - FF 和 chrome 中的文本区域以相同的大小显示

javascript - 我应该如何使用 jcrop 在客户端裁剪图像并上传?

jquery - 悬停包装器上的 css 显示和滑动 div

javascript - 刷新元素以显示其新工具提示(在 jQuery/Javascript 中)

html - 如何垂直放置图像以便它们始终填满屏幕

javascript - Bootstrap 3 Accordion 折叠在 iphone 上不起作用