2016-11-25 2 views
0

私はdivスクロールをユーザーが下に移動しようとしている、そして、divを閉じると、隠れたままにする必要があります。スクロール中にdivをフォローするが、クリック時に非表示にするにはどうすればよいですか?

スクロールはうまくいきますが、ユーザーがdivを隠してからsrcollsを再表示した後にスクロールを再開しないようにする方法はありません。

trueの場合divを非表示にする部分をelse-if文に移動しました。しかし、else-ifステートメントは機能しません。

もしそうであれば、スクロールを開始するとどうすればそれが固執し、振り返っていないのですか?

私のコード今

$('body').prepend('<div id="mydiv"></body>'); 

$(document).ready(function() { 
    $('#mydiv').delay(2000).animate({ 
    top: "100" 
    }, "fast", "linear") 
}); 

var hide = false; 

$("#hide-mydiv").click(function() { 
    hide = true; 
}); 

if (hide == false) { 

    $(document).scroll(function() { 
    var y = $(this).scrollTop(); 
    if (y <= 0) { 
     $('#mydiv').stop().animate({ 
     top: "100" 
     }, 0); 
    } else { 
     $('#mydiv').stop().animate({ 
     top: "50" 
     }, 0) 
    } 
    }); 
    elseif (hide == true) 
    $('#mydiv').animate({ 
     top: "-100" 
    }, "fast", "linear") 
    } 

答えて

0

1)を実行し、「隠す」-animationは正確にクリックした後、true

2)スクロールイベントであなたのフラグ変数を確認するには、あなたのフラグ変数を設定しますそうでない場合は

+0

お返事ありがとうございますが、私はjavascriptを初めて使っています。他のスタックオーバーフローの解答をかなり回収し、自分のスクリプトを作成しましたが、今はこれら2つをまとめるのに問題があります。この? – RzK

関連する問題