【发布时间】:2013-08-17 00:17:03
【问题描述】:
基本上我有一个按钮,我想悬停并滑动到绿色(活动)按钮,然后将鼠标移出并滑动到看似打开的灰色非活动按钮,但它从左侧进入,然后我会想取消这个设置,让我的按钮回到开始,而不是真正转换到它,希望这有意义吗?
目前,如果我转换到第一个按钮从 left:0 到 left:-210px 你会看到转换,因为 .btn-ctn 上有转换,是否可以暂时禁用它以便按钮有效跳转所以你没有看到绿色的中间按钮?
CSS
* {
padding: 0;
margin: 0;
border: 0;
outline: 0;
list-style: none;
}
body {
padding: 20px;
}
.direction {
width: 70px;
overflow: hidden;
}
.btn-ctn {
width: 210px;
position: relative;
left: -140px;
-webkit-transition: left .3s ease-in-out;
}
.btn-ctn.on {
left: -70px;
}
.btn-ctn.off {
left: 0;
}
.btn-ctn > li {
float: left;
position: relative;
}
.btn {
width: 70px;
height: 70px;
background: #676767;
display: block;
}
.btn::after {
content: '';
width: 30px;
height: 30px;
border-right: 2px solid white;
border-top: 2px solid white;
display: block;
position: absolute;
top: 0; right: 15px; bottom: 0; left: 0;
margin: auto;
-webkit-transform:rotate(45deg);
}
.active .btn {
background: #5cdf84;
}
.btns > li::after {
}
JS
$('.btn').on('mouseenter', function() {
$('.btn-ctn').removeClass('off').addClass('on');
}).on('mouseleave', function() {
$('.btn-ctn').removeClass('on').addClass('off');
//reset to start without actually animating so if i hover over again the same animation happens as if its first time?
});
JSFiddle http://jsfiddle.net/AtZX2/2/
【问题讨论】:
标签: javascript jquery css css-transitions