Ici est un plugin jquery qui permet de résoudre ce problème:
https://github.com/bigspotteddog/ScrollToFixed
La description de ce plugin est comme suit:
Ce plugin est utilisé pour fixer les éléments de la partie supérieure de la page, si l'élément aurait défilé de mode, à la verticale; cependant, il ne permet pas l'élément de continuer à se déplacer vers la gauche ou la droite avec la barre de défilement horizontale.
L'option marginTop, l'élément va cesser de déplacement vertical vers le haut une fois que le défilement vertical a atteint la position cible; mais, l'élément va encore se déplacer à l'horizontale comme à la page défile de droite ou de gauche. Une fois que la page a été défile en arrière vers le passé de la position de la cible, l'élément sera restauré à sa position d'origine sur la page.
Ce plugin a été testé dans Firefox, 3/4, Google Chrome 10 Et 11, Safari 5, et Internet Explorer 8/9.
L'utilisation de votre cas particulier:
<script src="scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="scripts/jquery-scrolltofixed-min.js" type="text/javascript"></script>
$(document).ready(function() {
$('#mydiv').scrollToFixed({ marginTop: 250 });
});