2016-11-10 13 views
-1

私はmailchimp購読ニュースレターフォームを持っています。私はフォームがスクロールされるのと同時にスクロールするようにしたい。ページスクロールと共にフォームスクロールを行う方法

ページがスクロールされているときはちょうどfadeInfadeOutですが、ユーザーがページをスクロールしているときにも下に移動したいと考えています。

これは私のhtmlです。

<div class="container"> 
    <div class="row"> 
     <div class="pull-right"> 
      <!-- Begin MailChimp Signup Form --> 
      <link href="//cdn-images.mailchimp.com/embedcode/slim-10_7.css" rel="stylesheet" type="text/css"> 
      <form id="subscribe-form" name="mc-embedded-subscribe-form" class="validate"> 
       <p>Sign up for our newsletter</p> 
       <div id="signup_scroll"> 
        <div class="mc-field-group"> 
         <label for="mce-EMAIL">Email Address <span class="asterisk">*</span> 
         </label> 
         <input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL" required> 
        </div> 
        <div class="clear"><input type="submit" value="Submit" name="subscribe" id="subscribe" class="button"></div> 
       </div> 
      </form> 
     </div> 
    </div> 
</div> 

JS

var amountScrolled = 300; 
$(window).scroll(function() { 
    if ($(window).scrollTop() > amountScrolled) { 
     $('#subscribe-form').fadeIn('slow'); 
    } else { 
     $('#subscribe-form').fadeOut('slow'); 
    } 
}); 

$('#subscribe-form').click(function() { 
    $('html, body').animate({ 
     scrollTop: 0 
    }, 700); 
    return false; 
}); 
+0

このアウトをチェックして、ここからスタート。 http://stackoverflow.com/questions/12522807/scroll-event-listener-javascript – ScottyDoesKnow

+0

@ScottyDoesKnowなぜあなたは私の質問に投票しましたか?私はまったくの質問をしていません。 –

+0

バディ、私はあなたの質問をd​​ownvoteしませんでした。誰かがしました。しかし、私はなぜ – ScottyDoesKnow

答えて

1

私はそれを解決しました。

HTML

<div class="row newsletter" id="scrollingDiv"> 
     <!-- Begin MailChimp Signup Form --> 

     <link href="//cdn-images.mailchimp.com/embedcode/slim-10_7.css" rel="stylesheet" type="text/css"> 
     <form id="subscribe-form" name="mc-embedded-subscribe-form" class="validate"> 
      <a id="close" onclick="closeDialog()"><i class="fa fa-times" aria-hidden="true"></i></a> 
      <p>Join Our Newsletter!</p> 

      <div id="signup_scroll"> 
       <div class="field-group"> 
        <label for="EMAIL">Email Address <span class="asterisk">*</span> 
        </label> 
        <input type="email" value="" name="EMAIL" class="required email" id="EMAIL" required> 
       </div> 
       <div class="clear"> 
        <input type="submit" id="subscribe" class="button"> 
       </div> 
      </div> 
     </form> 
    </div> 

JS

var $scrollingDiv = $("#scrollingDiv"); 

    $(window).scroll(function(){ 
     $scrollingDiv 
      .stop() 
      .animate({"marginTop": ($(window).scrollTop()-30) + "px"}, "slow"); 
    }); 
関連する問題