だから私は、次のマークアップで、このボタンを作ろうとしています:
CSS:
.button {
text-shadow: 0px 7px 0px #3b6e62;
color: #f2b191;
top:0px;
-webkit-transition: all 1.4s ease-in-out; -moz-transition: all 1.4s ease-in-out; -ms-transition: all 1.4s ease-in-out; -o-transition: all 1.4s ease-in-out; transition: all 1.4s ease-in-out;
}
html:
<a href="#"><div class="button">Text</div></a>
ユーザーがこのボタンを押すと、テキストの影 -7px と上部 +7px をアニメーション化して、ボタンが押されたように見せたいと思います。
いくつかのことが起こるはずです:
まず、ユーザーがホバーするだけでボタンがアニメーション化されるようにします。4px から 3px のテキスト シャドウ / 4px の上部と元のマークアップの間でアニメーション化する必要があります。
それよりも、ボタンが押されると、テキストの影が -7px で上部が +7px になるはずです。(同じページへのリンクなので、後で戻ってください)。
これがまだ理にかなっていることを願っています。
ここですでに多くの JQuery の例を試しましたが、うまく動作しないようです。現時点では、このコードを試しています:
var timer;
$(".button").hover(function() {
timer = setInterval(function() {
$(".button").css('top', '4px');
$(".button").css('text-shadow', '0px 3px 0px #3b6e62');
}, 600);
timer = setInterval(function() {
$(".button").css('top', '0px');
$(".button").css('text-shadow', '0px 7px 0px #3b6e62');
}, 600);
// Change the interval as you see fit.
}, function() {
clearInterval(timer);
});
私も意図したとおりに機能させることができません。ホバー時に1回だけアニメーションを続けます。