исправить положение вертикальной полосы прокрутки для 2-й строки в div (cshtml)? - PullRequest
0 голосов
/ 03 ноября 2011

У меня есть div с полосой прокрутки, которая отображает 15 месяцев с 3 минутами в каждой строке. Когда страница загружается, я хочу зафиксировать положение полосы прокрутки во 2-й строке, как показано на моем скриншоте. Как и на полосе прокрутки,должно быть зафиксировано в позиции, показанной на моем скриншоте, а не в верхней части div. Причина этого требования в том, что мы отображаем предыдущие 3 месяца, но пользователь должен видеть текущий месяц при загрузке страницы.Надеюсь, я дал понять, enter image description here

Я использую

<div id="key_dates" style ="overflow:scroll;width:960px;height:500px">

Можете ли вы, ребята, пожалуйста, помогите?

Спасибо, Адарш

Ответы [ 2 ]

1 голос
/ 03 ноября 2011

Кажется, я не могу правильно продемонстрировать это с помощью jsfiddle, но - это пример кода , который работает, если вы тестируете его в браузере.Используя привязки в каждой строке, мы можем привязать окно к указанному местоположению, используя href или url.

Например, если вы внедрили этот код в www.address.tld/calendar, чтобы показать вторую строку, вы должны ввестиwww.address.tld/calendar#row2.

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

1 голос
/ 03 ноября 2011

Вы должны использовать JavaScript для этого:

<!-- 
     Place this script before closing </body> tag so that
     DOM (HTML elements tree) is already built when the script is running 
-->
<script>
// create a closure to not pollute global scope
!function () {
  // cache reference to keyDates element
  var keyDates = document.getElementById('key_dates');
  // set scroll to the height of one row
  keyDates.scrollTop = 150; // substitute `150` with height of one row
} ();
<script>

Здесь - документация element.scrollTop

Если вы используете jQuery, вы делаете это так (а здесь - документы);

<script>
$('#key_dates').scrollTop( 150 );
</script>

Пример с jQuery: http://jsfiddle.net/gryzzly/CjdwX/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...