javascript - 使用 JQuery toggleclass 来操作点击转换

标签 javascript jquery css css-transitions toggleclass

我正在尝试在单击按钮时进行漂亮的转换。 该按钮基本上是一个触发 Jquery 函数的 div。该按钮由一些文本和一个 FontAwesome 图标组成。

我想以一种方式使用 JQuery,当我单击按钮时,FA 图标的大小会快速变化并变回,这样人们就会得到某种单击按钮的动画确认。我创建了一个过渡类,它至少增加了字体大小:

#keepbtn.clicked {
    font-size:3em;
    opacity:0.8;
    -webkit-transition: all 0.1s ease 0s;
    -moz-transition: all 0.1s ease 0s;
    -ms-transition: all 0.1s ease 0s;
    -o-transition: all 0.1s ease 0s;
    transition: all 0.1s ease 0s;   
}

我尝试在类之间切换使用延迟:

$("#keepbtn").toggleClass("clicked").delay(250).toggleClass("clicked");

但这行不通;它不会改变任何东西。 但是,这有效(但当然不会将其更改回原始大小:

$("#keepbtn").toggleClass("clicked");

有什么想法吗?我对转换和 JQuery 比较陌生,所以我可能完全采用了错误的方法。

提前致谢。

最佳答案

为了 delay() 在非动画元素上工作,你必须“排队”运算符:

$("#keepbtn")
    .toggleClass("clicked")
    .delay(250)
    .queue(function(nxt) {
         $(this).toggleClass("clicked");
         nxt();
    });

关于javascript - 使用 JQuery toggleclass 来操作点击转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28479841/

相关文章:

jquery - 如何使用 jQuery 递归解析子项

javascript - jQuery 插件 select2 有没有办法保留每个选择选项的类?

java - 动态操作 HTML 上的链接文件

html - 调整大小时使 Nav 低于 H1

html - 奇怪的边框位置

javascript - 我应该如何理解 data.key 值始终未定义,但我可以使用 get set 或 change 等方法访问它

javascript - 在 Ionic 项目中存储 URL 的最佳实践

javascript - 读取跨站点 iframe 位置

html - 如何使包装内的图像跨越包装的整个宽度

javascript - 用逗号分割字符串,但也要保留空字段