0

2つのページに上スライドと下スライドの効果があります。問題は、[概要]スライドが上になったら、連絡先リンクをクリックすると、下にスライドする前に連絡先ページに点滅します。何らかの理由で、両方のスライドのjqueryは同じ形式になっていますが、連絡先スライドが表示されているときにaboutリンクをクリックしても発生しないようです。問題が何であるかはわかりません。皆さんが私に問題を解決するのを手伝ってくれることを望んでいました。

私はそれを私のホストにアップロードしたので、皆さんはそれを自分で見ることができます。 http://maximsiebert.com/unamed/Untitled-1.html

これが私のjQueryです

 $(document).ready(function() {
 $('.contact').click(function () {
      if ($('#aboutpage').is(":visible")) {
        $('#aboutpage').slideUp(800)
        $('#portfolio').slideDown(800)  
        $('#portfolio').slideUp(800)
        $('#contactpage').slideDown(800)   
      }
      else if ($('#contactpage').is(":visible")) { 
      $('#contactpage').slideUp(1000) 
      $('#portfolio').slideDown(1000) 
      }
       else if ($('#contactpage').is(":hidden")) { 
      $('#portfolio').slideUp(1000) 
      $('#contactpage').slideDown(1000) 
      $('html, body').animate({scrollTop:0}, 'slow');
      }
      });

});

 $(document).ready(function() {
 $('.about').click(function () {
      if ($('#contactpage').is(":visible")) {
        $('#contactpage').slideUp(800)
        $('#portfolio').slideDown(800)  
        $('#portfolio').slideUp(800)
        $('#aboutpage').slideDown(800)   
      }
      else if ($('#aboutpage').is(":visible")) { 
      $('#aboutpage').slideUp(1000) 
      $('#portfolio').slideDown(1000) 
      }
       else if ($('#aboutpage').is(":hidden")) { 
      $('#portfolio').slideUp(1000) 
      $('#aboutpage').slideDown(1000) 
      $('html, body').animate({scrollTop:0}, 'slow');
      }
      });

});

4

1 に答える 1

0

通常、表示されたページがスライドダウンするのを待ってから、新しいページをスライドアップするのを待つ必要があります。

したがって、次のアプローチを使用する必要があります。

$('.about').click(function () {
  .... if contact page is shown ...

  $('#aboutpage').slideDown(800, function() {
     $('#aboutpage').slideUp(800);
  });
  .....

});
于 2012-10-23T23:53:54.453 に答える