2016-04-19 12 views
0

Ich verwende diesen Code, um die Position beim Scrollen zu ändern. Das Problem ist, wenn scrollte nach oben auf der Seite css top:'0px' nicht funktioniert. Hier ist der Code.jquery Scrolling Funktion funktioniert nicht richtig

window.onload = function() { 

    var stickySidebar = $('.bk-form-wrap').offset().top; 
    var $div = $('div.bk-form-wrap'); 
    $(window).scroll(function() { 

     if ($(window).scrollTop() > stickySidebar) { 
      $div.css({ 
       position:'fixed', 
       height: '70px' 
      }); 
      $div.animate({ 
       top: '95px', 
       //top:'100%', 
       // marginTop: - $div.height() 
      }); 
     } 
     else { 
     } 

     if ($(this).scrollTop() == 0) { 
      //Call your event here 
      $div.css({ 
       position:'relative', 
      }); 
      $div.animate({ 
       top:'0px', 
      }); 
     } 
    }); 
}; 

Und Link zu page. Bitte helfen. Vielen Dank.

+0

Sie versuchen, die Position von was zu ändern, wenn gescrollt? –

+0

das Buchungsformular unter dem Slider. – sathsara

+0

Wenn Sie zum oberen Seitenrand scrollen, sollte ".bk-form-wrap" top 0 sein – sathsara

Antwort

1

Versuchen Sie es.

var $div = $('div.bk-form-wrap'); 
$(window).scroll(function() { 
    var stickySidebar = $('.bk-form-wrap').offset().top; 
    if ($(window).scrollTop() > stickySidebar) { 
     $div.css({ 
      position:'fixed', 
      height: '70px' 
       },1000); 
     $div.animate({ 
      top: '95px' 
      //top:'100%', 
      // marginTop: - $div.height() 
     }); 
    } 

    else if ($(window).scrollTop() == 0) { 
     //Call your event here 
     $div.css({ 
      position:'relative' 
       }); 
      $div.animate({ 
      top: '0px' 
     },500); 
    } 
}); 
Verwandte Themen