質問

私は、トグル、slideUpとslideDownを使用してdiv要素のシリーズを表示し、非表示しようとしています。私は、slideDownにdiv要素を取得することができるが、私はslideUpにそれを取得することはできません。ので、私は本当にこれが動作しない理由として困惑している前に、私は何事もなく、このスクリプトを使用しました。私は私のスクリプトと私が表示され、非表示しようとしてるのdivが含まれている。

クイック注:私は「隠された車」のdivに定期的に古いpタグを入れると、それがうまく働きました。それがになっていたようです示すと隠れていました。私は戻っているのdivに私のテーブルを置いたときしかし、それは動作しませんでした。

<script type="text/javascript">
$(document).ready(function() {
    $(".ShowVehicles").toggle(function() {
        $(".HiddenVehicles").slideDown(2000);
        $(this).text("Hide All");
    }, function () {
        $(".HiddenVehicles").slideUp(2000);
        $(this).text("Show All");                
    });
});

<div class="HiddenVehicles" style="display:none; width:730px;">
    (there will be a giant table in here)
    </div>
役に立ちましたか?

解決

私はコメントとして、このアドバイスを掲載し、私はここに再びそれを掲示していますので、それは問題を解決するのに役立った。

slideUp / slideDownアニメーションは一方向にしか動作した場合、

、それは多くの場合、位置決めバグです。どちらかあなたがニーズをアニメーション化されている要素がposition:relativeに設定するか、要素の子がfloatが適用されていると、親要素の真の高さを与えていないされます。

私は、テーブルにfloat:noneを追加しようとするだろう。それがうまくいかない場合は、position:relativediv#HiddenVehiclesを追加してみます。

他のヒント

フロート/位置決め問題のないものについては、私はjQueryの1.10から1.11にアップグレードしても問題が解決していることが分かりました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top