2016-06-17 6 views
0

特定のポイントの後にスクロールダウンしたときにサイトに表示されるニュースレターセクションがあります。このニュースレターセクションには、このニュースレターセクションを閉じることができる閉じるボタンがあります。しかし、問題はニュースレターを閉じて再びスクロールを開始すると再び現れることです。最初の関数は2番目の関数を取り消します。閉じるボタンはニュースレターボタンをページから削除し、再びスクロールを開始すると再び表示されません。スクロールアニメーションを閉じた後にスクロールする

var amountScrolled = 300; 

$(window).scroll(function() { 
    if ($(window).scrollTop() > amountScrolled) { 
     $('.Newsletter_btn').fadeIn('slow'); 
    } else { 
     $('.Newsletter_btn').fadeOut('slow'); 
    } 
}); 

$(document).ready(function(c) { 
    $('.alert-close').on('click', function(c){ 
     $(this).parent().fadeOut('slow', function(c){ }); 
    }); 
}); 
×
+0

ボタンを非表示にするには、スクロールダウン方式をお試しください。 – Samir

+1

@ANILVISHVKARMAあなたが整形を改善するために編集した場合、一行にすべてを書き込まないでください! –

答えて

1

それは簡単です。変数を追加するだけで、何がlistenst はニュースレターが閉じたですか?

私はそれをshowNewsletterと呼びました。

ページを読み込むときは、trueです。スクロールダウンすると表示されます。ユーザーが終了している場合はfalseに設定してください。もう一度表示しないでください。

var amountScrolled = 300; 
var showNewsletter = true; //init 

$(window).scroll(function() { 

    if ($(window).scrollTop() > amountScrolled) { 
     if (showNewsletter) { //show only if not turned off 
      $('.Newsletter_btn').fadeIn('slow'); 
     } 
    } else { 
     $('.Newsletter_btn').fadeOut('slow'); 
    } 
}); 

$(document).ready(function (c) { 
    $('.alert-close').on('click', function (c) { 
     $(this).parent().fadeOut('slow', function (c) { }); 
     showNewsletter = false; // turn off 
    }); 
}); 
+0

ありがとう! – user3241466

関連する問題