如何将 CSS3 动画效果添加到简单 jQuery 选项卡
How to add CSS3 Animation Effects to Simple jQuery Tabs
我创建了一个 jQuery 选项卡并且工作正常,但我想添加一些 CSS3 效果,例如缩放、翻译、过渡..
现在我的选项卡只有 jQuery 效果,例如 fadeIn/slideToggle,但我需要使用 CSS3 创建我的自定义效果,所以我如何将 CSS3 动画功能添加到我的制表符代码。
在这里查看我的代码:demo
一些CSS3动画效果所需的代码:
-webkit-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
-webkit-transform: scale(1);
-o-transform: scale(1);
transform: scale(1);
opacity: 1;
我想要的动画是当有人点击选项卡时必须显示来自 transform: scale(0.8); to transform: scale(1);
的选项卡内容
和 opacity: 0; to opacity: 1;
将您的 CSS 设置为 class,然后使用 .toggleClass()
将其应用于给定元素。
所以,
$("tab").click(function(){
$(this).toggleClass("myClass");
});
而您的 css 将是:
.myClass{
-webkit-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
-webkit-transform: scale(1);
-o-transform: scale(1);
transform: scale(1);
opacity: 1;
}
当您单击选项卡标题时,在匹配的 tab-content
上设置一个 class,启动一个比动画稍长的计时器,然后删除 class。
$(".tabs li").click(function(){
var cur =$(".tabs li").index(this);
var elm = $('.tabcontent:eq('+cur+')');
elm.addClass("pulse");
setTimeout(function() {
elm.removeClass("pulse");
}, 220);
});
我创建了一个 jQuery 选项卡并且工作正常,但我想添加一些 CSS3 效果,例如缩放、翻译、过渡.. 现在我的选项卡只有 jQuery 效果,例如 fadeIn/slideToggle,但我需要使用 CSS3 创建我的自定义效果,所以我如何将 CSS3 动画功能添加到我的制表符代码。
在这里查看我的代码:demo
一些CSS3动画效果所需的代码:
-webkit-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
-webkit-transform: scale(1);
-o-transform: scale(1);
transform: scale(1);
opacity: 1;
我想要的动画是当有人点击选项卡时必须显示来自 transform: scale(0.8); to transform: scale(1);
的选项卡内容
和 opacity: 0; to opacity: 1;
将您的 CSS 设置为 class,然后使用 .toggleClass()
将其应用于给定元素。
所以,
$("tab").click(function(){
$(this).toggleClass("myClass");
});
而您的 css 将是:
.myClass{
-webkit-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all 0.4s ease;
-webkit-transform: scale(1);
-o-transform: scale(1);
transform: scale(1);
opacity: 1;
}
当您单击选项卡标题时,在匹配的 tab-content
上设置一个 class,启动一个比动画稍长的计时器,然后删除 class。
$(".tabs li").click(function(){
var cur =$(".tabs li").index(this);
var elm = $('.tabcontent:eq('+cur+')');
elm.addClass("pulse");
setTimeout(function() {
elm.removeClass("pulse");
}, 220);
});