0

私は次のコードを持っています:

$(document).ready(function(){
   $("#cont").hide();
   $("#slide").show();

   $('#slide').click(function(){
       $("#cont").slideToggle();
       $("#slide").css("background-image", "url('img/slideup.png')");
   });
});

コードは、別のdivをクリックして戻った後、divを呼び出してどこからともなくスライドダウンするだけです。そして、CSSの場合と同様に、開始時にアイコンを下向きの矢印に設定しました。クリックすると、上向きに変わりますが、このままになります。divのステータスに応じて「toogle」にする方法がわかりません。私は多くのことを試しましたが、スクリプトは単純に失敗しました。誰かが私にいくつかの手がかりまたはbgイメージを切り替えるコードを教えてもらえますか?私がうまくいかなかったので、適切なdivステートメントのようなもの...

どうもありがとう!

4

2 に答える 2

0

意味が100%わからない場合は、次のように試すことができます。

$('#slide').click(function(){
    if ($("#cont").is(':hidden')) {
        $("#cont").slideDown(400,function () {
            $("#slide").css("background-image", "url('img/slideup.png')");
        });
    }
    else {
        $("#cont").slideUp(400,function () {
            $("#slide").css("background-image", "url('img/slidedown.png')");
        });
    }
});
于 2012-07-20T00:19:46.683 に答える
0

ここでこの例を試して、開始します。JavaScriptではなくcssで初期表示を設定します。

$(document).ready(function(){

       var slid = false,
           toggleState = function(state){

               // Figure out which direction to go.
               var direction = state ? "slideUp" : "slideDown",
                   url = state ? "img/slideup.png" : "img/slidedown.png";

               // Do the slide.
               $("#cont")[direction]();
               $("#slide").css("background-image", "url(" + url + ")" );

               // Change the state 
               slid = !state;

           };

    $('#slide').click(function(){

        toggleState(slid);

    });

});
于 2012-07-20T00:37:20.037 に答える