Javascript: изменение размера маркера прокручиваемого элемента на полосе прокрутки - PullRequest
1 голос
/ 28 января 2010

Можно ли программно получить доступ к ручке полосы прокрутки Div и изменить ее размер?

- Редактировать: есть ли плагин mootools для чего-то подобного?

Я пытаюсь реализовать механизм отложенной разбивки на страницы, где содержимое div будет обновляться при прокрутке, но мне бы хотелось, чтобы ручка на полосе прокрутки показывала окончательный размер. Это означает, что если в элементе div будет только 10 элементов, дескриптор будет довольно большим, а если будет 1000, дескриптор будет настолько малым, насколько это возможно, даже если пользователь еще не загрузил все 1000 элементов.

Я нашел этот сайт , но я хочу избежать использования этого класса.

Спасибо!

Ответы [ 3 ]

1 голос
/ 28 января 2010

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

Другое решение, которое вы могли бы реализовать, - показать количество результатов с помощью другого визуального метода, а не полосы прокрутки. Если вы показываете 75 из 100 элементов, вы можете сделать фиксированный интервал деления 75% по экрану.

0 голосов
/ 28 января 2010

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

0 голосов
/ 28 января 2010

Вы можете поместить пустой элемент div в прокручиваемый элемент и динамически установить его высоту, пропорциональную фактическому размеру содержимого.

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