2013-11-25 69 views
0

我正在使用這個html & jquery我發現另一個問題,它運作良好,有一個例外。DIV稍微偏離屏幕

它顯示和隱藏divs,這很好地工作,除非div靠近屏幕的底部,然後顯示,但它的一部分是在屏幕外。

是否有更新此代碼,所以如果DIV部分在屏幕外頁面自動滾動,所以它進入視圖?

HTML:

<ul id="list"> 
    <li> 
     <a href="#" class="togglelink">America</a> 
     <div class="toggle" style="display: block;"> 
      <p>America - USA - the States</p> 
     </div> 
    </li> 
    <li> 
     <a href="#" class="togglelink">Brazil</a> 
     <div class="toggle" style="display: block;"> 
      <p>Brazil - Federative Republic of Brazil</p> 
     </div> 
    </li> 
</ul> 

JS:

$(document).ready(function() { 
    $('.toggle').hide(); 
    $('a.togglelink').on('click', function (e) { 
     e.preventDefault(); 
     var elem = $(this).next('.toggle') 
     $('.toggle').not(elem).hide('slow'); 
     elem.toggle('slow'); 
    }); 
}); 

顯然,這顯示並沒有關閉屏幕應該不會受到影響任何其他分區。

千恩萬謝:-D

回答

1

你可以確定一個div容器通過其y值和高度的位置。因此,您可以確定何時不在屏幕上。然後,你可能要添加視差滾動http://wedesignpixel.com/best-jquery-parallax-scrolling-tutorials/

+0

可以這樣無需額外的jQuery插件來完成調整div的位置? – MacMan

+0

它可能不漂亮,但它當然可以工作。 jquery使用平臺的Javascript底層。你可以檢查一下:http://stackoverflow.com/questions/13238099/viewport-size-and-rolling – Schnodderbalken

1

用css,你可以根據你的要求,使其這麼想的影響你的其他分區的