私はjquery1.3.2を使用しており、これは次のコードです。
<script type="text/javascript">
//<![CDATA[
jQuery(function(){
jQuery('.news_bullet a.show_preview').click(function() {
jQuery(this).siblings('div').slideToggle('slow');
return false;
}).toggle(
function() {
jQuery(this).css({ 'background-position' : '0 -18px' });
},
function() {
jQuery(this).css({ 'background-position' : '0 0' });
});
});
//]]>
</script>
ここに表示されている場合、小さな緑+がたくさんあります。これをクリックすると、テキストが表示され、そのリンクの背景位置が変更されるため、画像の他の部分である赤-が表示されます。
ですから、私が抱えている問題は、テキストの量に依存するため、これらの非表示要素の高さがわからないことです。したがって、+をクリックして表示すると、アニメーションが「ジャンプ」します。
私が見つけた回避策の1つは、固定の高さとオーバーフローを配置することです。これらの非表示の要素に非表示にします。左上のブロック(上部に「Vestiiz sveta crtanogfilma」があるブロック)でどれだけスムーズなアニメーションが実行されているかを確認できます。他のすべてのブロックの高さは固定されておらず、アニメーションには「ジャンプ」があります。左上のブロックの固定高さは30pxですが、多くの場合、必要な高さが高い要素と低い要素があるため、これは適切な解決策ではありません... :)
では、高さが固定されていないときにこのアニメーションが「ジャンプ」しないようにするにはどうすればよいでしょうか。