2013-05-10 4 views
3

Есть dwo divs #leftPane и #rightPane. #leftPane имеет относительную позицию и установленную в браузере полосу прокрутки в соответствии с ее высотой, между тем #rightPane имеет положение: фиксированное, и я добавляю top: -значение к ней во время прокрутки, поэтому мы прокручиваем 'secont div с разной скоростью. То, что я хочу достичь, это получить что-то вроде scrollSpeedModifier в соответствии с 1. высотой окна браузера, 2 высотой контента leftPane и 3 высотой контента в правую сторону (высота содержимого 2,3 может различаться каждый раз).jQuery алгоритм прокрутки скорости

Так что при прокрутке #leftPane - если содержимое #rightPane больше, чем #leftPane, его верхнее значение растет быстрее, чем обычная прокрутка, но когда высота контента #rightPane меньше, чем #leftPanes, верхнее значение растет медленнее, чем обычная прокрутка.

Это способ подсчитать скорость прямо сейчас:

ar scrollSpeed = (rightPaneHeight)/browserHeight; 

, но это неправильно, иногда мы получаем в середине #rightPane и когда мы изменяем «браузера» размер (jfiddle размер окна) мы можем добраться до конца #rightPane.

Это код, который я в конечном итоге до сих пор:

http://jsfiddle.net/bVfcX/15/

ответ

0

увидеть это Demo

  1. var doc = $(window); // for get height of document

  2. doc.scrollTop является функцией использования doc.scrollTop()

дайте ему попробовать.

+0

Он по-прежнему не прокручивается второй DIV к «END» и при изменении размера окна jfiddle она прокручивается в разные позицию каждый раз. – strongBAD

+0

так что это ваш алгоритм! :) вы должны изменить алгоритм – mehdi

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