2013-02-15 2 views
2

У меня есть много вкладок, и при нажатии любой вкладки отображается вертикальная прокрутка div. Как страница сообщений facebook: при нажатии на любое имя пользователя. Диалог кажется, и полоса прокрутки находится на нижней части div по умолчанию.Как сохранить полосу прокрутки внизу в div?

Вот закладки:

<ul class="companies"> 
    @foreach (var item in Model) 
    { 
     <li id='[email protected](item.Id)' data-id='@item.Id' > 
      <a>@item.Name</a> 
     </li> 
    } 
</ul> 

и содержание:

@foreach (var item in Model) 
{ 
    <div id="scrollingDiv" class="scrollingDiv"> @item.News </div> 
} 

И CSS:

.scrollingDiv { 
    overflow-x: hidden; 
    max-height: 500px; 
    overflow-y: scroll; 
} 

Я хочу держать прокрутки на дне, когда нажмите любую вкладку. (Чтобы всегда видеть последние новости). Также текущий div. Я проверил this вопросов. Но не работал в моем приложении. Как я могу решить эту проблему?

+0

Я думаю, что $ ("# mydiv"). ScrollTop ($ ("# mydiv") [0] .scrollHeight); вещь должна работать на вас. Как вы знаете, что вы правильно реализовали этот код? – gaurav

+0

Я проверил этот код по имени класса, а не по id. $ (". ScrollingDiv"). ScrollTop ($ (". ScrollingDiv") [0] .scrollHeight); Ничего не изменилось. –

ответ

4

С JavaScript, вы можете сделать что-то вроде

var d = document.getElementById('myDiv'); 

if(d.scrollHeight > d.clientHeight) { 
    d.scrollTop = d.scrollHeight - d.clientHeight; 
} 

и выполнить эту логику каждый раз, когда вы добавляете содержимое в DIV или когда вы хотите, чтобы прокручивать контейнер для прокрутки в нижней части.

Смежные вопросы