jquery - 阻止 addClass 上的 CSS 过渡

标签 jquery css transition

我有以下代码非常适合悬停过渡:

#main_nav a, #main_nav a:visited {
    display: block;
    width: 240px;
    margin: 3px 0 0 10px;
    padding: 3px 10px;
    color: #808080;
    background-color: #f2f2f2;
    border: 1px solid #ccc;
    border-radius: 5px;
    transition: 0.3s all;
}

#main_nav a:hover, #main_nav a:active, #main_nav a.active {
    width: 250px;
    margin-left: 0;
    color: #000;
    text-decoration: none;
    background-color: #fff;
}

但是,当我使用 JavaScript 应用类 active 时,我希望它立即获取属性而不触发转换。我一直在挖掘,但找不到任何东西......

这是一个显示问题的 fiddle :http://jsfiddle.net/7WsrY/

最佳答案

如果你想阻止它发生,你需要覆盖应用的 css 转换 #main_nav a 通过如下放置新规则,以便在应用类 active 时重置转换,否则 anchor 将从规则 继承转换#main_nav a:

#main_nav a.active {
    transition:none;
}

Demo

关于jquery - 阻止 addClass 上的 CSS 过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17077690/

相关文章:

javascript - 如何获得链接到新页面的按钮,并预先填充搜索栏

javascript - 如何检查相邻字符是什么?

HTML 静态侧导航栏

javascript - 表格内容溢出页面

javascript - 在没有 css transition 的情况下设置 css 属性

java - 安卓 : Start a transition after another one ends

javascript - 悬停时旋转,然后单击时保持在该位置,再次单击时返回原始位置

javascript - 如何为每个网站禁用 iframe 右键单击

text - 单独移动文本 div 标签

JavaScript视差变换过渡滚动