2013-01-07 17 views
5

Kullanıcı "overflow: auto;" olarak ayarlandığında kaydırma çubuğu gösterilir. ve kullanıcı işleri yukarıdan aşağı doğru kaydırır. Sorun şu ki, kaydırma çubuğu en altta mı yoksa en üstte olduğunda javascript/jquery nasıl kontrol edebilir? Böylece, bu durumu kontrol etmenin herhangi bir yolu/yolu var mı? TeşekkürKaydırma çubuğu durumu nasıl kontrol edilir? Zaten en üstte mi yoksa sonunda mı?

Güncelleme: jQuery UI iletişim kullanarak çalışma-Değil

html:

<div class = "dialog" id="dialog" title="Past Issues"></div> 

javascript:

$('#pastIssues').click(function (event) { 
      var issueString = 'product=Headline&year=2012&month=12'; 
      $('.issues,#issuesBox').remove(); 
      var dWidth = $(window).width() * 0.9; 
      var dHeight = $(window).height() * 0.9; 

      $("#dialog").dialog({ 
        height: dHeight, 
        width: dWidth, 
        modal: true, 
        draggable: false, 
        resizable: false, 
      }); 

      get_past_issues(issueString,2012,12,event.type); 
      return false; 
     }); 
+3

$ (pencere) 'Eğer .scrollTop()' sıfır o 'document.heigh aynıdır eğer, üst kısmında bulunuyor - pencere .height' dibinde. – adeneo

+0

@adeneo bunu cevap olarak gönder! – lukasgeiter

+0

Yeniden boyutlandırıldıktan sonra ek bir virgül var: false ... Bu bir kopya yapıştır hatası mıydı ..? – Anujith

cevap

10

HTML:

<div id="mydiv" style="overflow: auto; height: 500px"></div> 

METNİ:

$(document).ready(function() 
{ 
    $("#mydiv").scroll(function() 
    { 
     var div = $(this); 
     if (div[0].scrollHeight - div.scrollTop() == div.height()) 
     { 
      alert("Reached the bottom!"); 
     } 
     else if(div.scrollTop() == 0) 
     { 
      alert("Reached the top!"); 
     } 
    }); 
}); 
+0

üzgünüm çalışmıyor, bkz. Güncelleştirilmiş soru – user782104

+0

@ user782104: Bu kült bakın: http://jsfiddle.net/QVcpW/1/ – Anujith

5

onay

if($(window).scrollTop() == 0 || $(window).scrollTop() == $(document).height()- $(window).height()) { 
    // do something 
}