0

以下のスクリプトを使用して、別の内部に非表示のdivをロードしています。

$(document).ready(function(){
    $(function() {
        $('#menu a').click(function(e) {
            e.preventDefault();
            $('#menu a').removeClass("selected");
            $(this).addClass("selected");
            var h = $(this).attr('href');
            $("#conteudo").fadeOut("slow", function() {
                $(this).html($(h).html()).fadeIn("slow");
            });
        });
 });

ただし、一部のページでは、divが非表示になっていない場合にのみ機能するmCustomScrollbarを使用しています。したがって、divが完全に表示された後でスクリプトを呼び出す必要があります。上記のコードでそれを行うにはどうすればよいですか?

これはscrollBarスクリプトの呼び出しです。

$("#mcs_container").mCustomScrollbar("vertical",400,"easeOutCirc",1.05,"auto","yes","yes",10);

スクリプトのページにはこのサンプルコードがありますが、私のスクリプトのロードはメニュー全体で有効です...そしてこの例では、彼が実行したいページを設定しています。はっきりさせますか?

$("#mcs_container .content").load("new.html", function(){
    $("#mcs_container").mCustomScrollbar("vertical",400,"easeOutCirc",1.05,"auto","yes","yes",10);
});
4

1 に答える 1

1

.fadeIn()アニメーションが終了すると(表示されるように)実行される関数にコールバック関数を渡すことができます<div>。次のようになります。

$("#conteudo").fadeOut("slow", function() {
    $(this).html($(h).html()).fadeIn("slow", function() {
        $("#mcs_container").mCustomScrollbar("vertical",400,"easeOutCirc",1.05,"auto","yes","yes",10);
    });
});
于 2012-06-27T15:49:52.743 に答える