Naprawianie menu w jednym kierunku w jquery

Po lewej stronie witryny mam „stały” pasek menu, za którym chcę przewijać pasek przewijania w dół strony. Dotychczas wypróbowałem dwa podejścia, jedno css i jedno jquery:

1) Moją pierwszą próbą było użycie ustalania stylu css:

#leftframe {
 position:fixed;
 width: 200;
}   

Zwykle działa to doskonale przy przewijaniu w pionie. Problem z tym rozwiązaniem polega na tym, że gdy okno nie jest zbyt szerokie, a użytkownik próbuje się przewijać, przechodzi nad treścią strony.

2) Po kilku badaniach odkryłem, że istnieje podejście jquery, które pozwala naprawić element w jednym kierunku, jak opisano tutaj w przepełnieniu stosu:CSS: ustalona pozycja na osi X, ale nie y?

Korzystając z przedstawionego tam podejścia, napisałem tę miłą, małą funkcję, aby to dla mnie zrobić:

function float_vertical_scroll(id) {
    $(window).scroll(function(){
        $(id).css({
            'top': $(this).scrollTop() //Use it later
        });
    });
}

Tylko teraz problem polega na tym, że wypróbowałem to w Chrome i Safari i oba pokazują zauważalne migotanie paska menu podczas przewijania w pionie. Menu porusza się w bardzo „niepewny” sposób, gdzie rozwiązanie css płynnie przesuwa je w dół strony.

Czy ktoś wie, dlaczego rozwiązanie jquery jest tak niepewne i czy można coś z tym zrobić? Czy jest jakieś trzecie rozwiązanie, które da mi „najlepsze z obu światów”?

Dziękuję wszystkim.

questionAnswers(1)

yourAnswerToTheQuestion