首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery .toggleClass()速度

jQuery .toggleClass()速度
EN

Stack Overflow用户
提问于 2013-07-24 14:39:10
回答 5查看 18K关注 0票数 2

我使用jQuery .toggleClass()函数,类将在每次单击时切换,这是很好的,但我无法设置速度,我尝试过这样做:

代码语言:javascript
复制
$('#databox').toggleClass('boxopened', 7000);

此外,还包括:

代码语言:javascript
复制
$('#databox').toggleClass('boxopened', 'easeInQuad');

还有这个:http://forum.jquery.com/topic/hover-and-toggleclass-fail-at-speed

我添加了最新的jQuery1.10jqueryUI: 1.10.3

可以设定速度吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-07-24 14:45:23

确保包含JQuery UI效果--基本JQuery不允许在显示/隐藏/切换中进行转换,它是作为UI效果的扩展添加的。(在您的应用程序中,或在浏览器控制台中,尝试running $.ui.version)

http://api.jqueryui.com/toggleClass/

编辑:在$.ui.version => "1.10.3"上为我工作(您所要求的版本)。下面是一个演示:http://jsfiddle.net/yKFjA/1/

哪些样式更改正在应用,您希望看到动画?

票数 4
EN

Stack Overflow用户

发布于 2013-07-24 14:45:46

在您的课程中添加:

CSS

代码语言:javascript
复制
    -webkit-transition:0.4s;
    -moz-transition:0.4s;
    -ms-transition:0.4s;
    -o-transition:0.4s;
    transition:0.4s;

这个“转换声明”将强制计时器,如果它不能工作,尝试添加!important或给我们一些代码来检查。

这里是一个演示:

JSnippet Demo

票数 6
EN

Stack Overflow用户

发布于 2013-07-24 14:49:30

您可以考虑通过CSS3转换来设置速度;如果您感兴趣,answer I gave to similar question可以帮助您启动。@Shlomi Hassid也提供了类似的建议。

这有一些优点

  • 简化代码,
  • 分离关注点,
  • 把工作交给浏览器可能会有更好的表现,
  • 在旧浏览器上绝对有更好的性能。

缺点--不一致的浏览器实现意味着从细微的差异到非功能性的(在旧浏览器上,虽然我认为性能的好处大于一致性的好处)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17837236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档