Đây là một plugin jquery hoàn chỉnh giải quyết vấn đề này:
https://github.com/bigspotteddog/ScrollToFixed
Mô tả của plugin này như sau:
Plugin này được sử dụng để cố định các phần tử lên đầu trang, nếu phần tử đã cuộn ra khỏi chế độ xem, theo chiều dọc; tuy nhiên, nó cho phép phần tử tiếp tục di chuyển sang trái hoặc phải với cuộn ngang.
Cho một tùy chọn marginTop, phần tử sẽ ngừng di chuyển theo chiều dọc lên trên khi cuộn dọc đã đến vị trí mục tiêu; nhưng, phần tử sẽ vẫn di chuyển theo chiều ngang khi trang được cuộn sang trái hoặc phải. Khi trang đã được cuộn xuống qua vị trí mục tiêu, phần tử sẽ được khôi phục về vị trí ban đầu trên trang.
Plugin này đã được thử nghiệm trên Firefox 3/4, Google Chrome 10/11, Safari 5 và Internet Explorer 8/9.
Cách sử dụng cho trường hợp cụ thể của bạn:
<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 });
});