2013-10-14 1 views
-1

Что такое лучший способ подойти к этой проблеме ?:Прокрутка вверх, если страница становится короче, чем текущее положение прокрутки (бутстрапе + JQuery)

У меня есть список, который имеет имена, которые вы можете нажать на кнопку. Когда вы нажимаете на имя, список исчезает и появляется информация об этом имени. Однако этот список часто длиннее, чем информация, поэтому, если вы нажмете на имя в нижней части списка ... список будет заменен информацией (поэтому страница становится короче). Однако Chrome (в OS X 10.8) сохраняет текущую позицию прокрутки, даже если полоса прокрутки уменьшилась ... поэтому пользователь увидит только серый экран (потому что страница больше не идет так далеко вниз).

Любая помощь была бы принята с благодарностью! Я могу прояснить вопрос, если нужно :)

Edit: я уже попробовал, что предложил AwokeKnowing, но это не отличный вариант, потому что, если добавленная содержание уже в окне прокрутки в верхней части есть «рывками «чувство к этому. Вы уже видите, что это добавлено, так зачем настраивать прокрутку в этом случае? Должен быть способ проверить, отображается ли контент в окне просмотра или нет.

$("button").click(function(){ 
    alert($("div").scrollTop()); 
}); 

Также, AwokeKnowing также предположил, что это может быть просто ошибка браузера. Если это так, есть ли работа?

Edit 2: Другие особенности, имена представляют собой список ссылок (<a href="#">) в загрузочном вкладке-панели и нажав на них создает новую вкладку-панель и переключается на него. Проблема заключается в том, что вновь созданная панель значительно короче той, у которой есть список. Переход к более короткой панели создает нежелательное поведение.

+2

Вопросов по SO работает лучше всего, когда вы размещаете код, который вы пробовали. Вот более подробная информация о том, как задавать вопросы по SO: http://stackoverflow.com/questions/how-to-ask – kunalbhat

+0

@kunalbhat - добавленный код. – Andrew

+0

@ Андрей, это начало, но пример, на который мы могли бы обратить внимание, демонстрирует, что «отрывистое» чувство было бы полезно. Можете ли вы создать http://jsfiddle.net/, который его демонстрирует? – Trevor

ответ

1

с JQuery вы можете прокручивать к любому элементу, так что просто прокручивать вверх ваш DIV при обращении замкового

$("button").click(function(){ 
    alert($("div").scrollTop()); 
}); 
+0

Спасибо, что ответили! :) Есть ли способ проверить, не просматривается ли пользователь в конце страницы? Я бы не хотел, чтобы он прокручивался вверх, если это не обязательно. – Andrew

+0

ну, это на самом деле ошибка браузера, так что «не должно» быть способом. – AwokeKnowing

+0

не всегда ли вы переходите к началу нового элемента, который вы только что добавили? – AwokeKnowing

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