6

こんにちは、私は数時間検索エンジンの壁に頭をぶつけていました。

ぼかしで 1 つのサイズ、たとえば 300x30 の div を作成する必要があります。これは、ホバーすると 300x300 に拡張され、その下のすべてのコンテンツが押し下げられ、ぼやけると 300x30 サイズに戻ります (「もはやホバーされていない」または子供が呼んでいるものは何でも)それは今では笑)再び。誰かが私にいくつかのリソースを教えてくれますか、それとも遊ぶためのコードビットを教えてくれますか? それは大歓迎です!

4

3 に答える 3

13

アニメーションが必要ない場合は、CSS で疑似クラスを使用できます。

div.div {
   height: 30px;
   width: 300px;
   border: 1px solid black;
}

div.div:hover {
   height: 300px;
}​

実際の例

http://jsfiddle.net/aFUmS/

$('.div').hover(function() {
    $(this).animate({
        height: '300px'
    }, 300);
},function() {
    $(this).animate({
        height: '30px'
    }, 300);
});​

アニメーションが必要な場合のjQueryの例

http://jsfiddle.net/CvhkM/

于 2010-09-20T20:56:07.337 に答える
2

.stop()または、の前にaを追加する.animateと、ポインタを削除した直後にアニメーションが停止します。

$('.div').hover(function() {
    $(this).stop().animate({
        height: '300px'
    }, 300);
},function() {
    $(this).stop().animate({
        height: '30px'
    }, 300);
});
于 2011-11-18T16:15:44.583 に答える
2

ロバートの答えにトランジションを追加すると、それは CSS のみであり、アニメーションも得られます。

これを div に追加します (div:hover ではありません): transition: height 0.5s ease-in;

これをサイトに実装したところ、モバイルでもうまく機能します。ただし、div は、折りたたまれて展開されたときに静的な高さである必要があります。

于 2015-04-08T19:12:55.923 に答える