HTML/CSS Cách tiếp cận
Nếu bạn đang tìm kiếm một lựa chọn mà không đòi hỏi nhiều JavaScript (và và tất cả những vấn đề mà đi kèm với nó, chẳng hạn như các cuộc gọi sự kiện cuộn nhanh), nó có thể đạt được cùng một hành vi bằng cách thêm một wrapper <div>
và một vài kiểu.Tôi nhận thấy di chuyển mượt mà hơn nhiều (không có yếu tố tụt hậu so với) khi tôi sử dụng các phương pháp sau đây:
JS Fiddle
HTML
<div id="wrapper">
<div id="fixed">
[Fixed Content]
</div><!-- /fixed -->
<div id="scroller">
[Scrolling Content]
</div><!-- /scroller -->
</div><!-- /wrapper -->
CSS
#wrapper { position: relative; }
#fixed { position: fixed; top: 0; right: 0; }
#scroller { height: 100px; overflow: auto; }
JS
//Compensate for the scrollbar (otherwise #fixed will be positioned over it).
$(function() {
//Determine the difference in widths between
//the wrapper and the scroller. This value is
//the width of the scroll bar (if any).
var offset = $('#wrapper').width() - $('#scroller').get(0).clientWidth;
//Set the right offset
$('#fixed').css('right', offset + 'px');
});
Tất nhiên, phương pháp này có thể được sửa đổi để di chuyển các vùng có được/mất nội dung trong suốt thời gian chạy (điều này sẽ dẫn đến việc thêm/xóa thanh cuộn).
Nguồn
2012-07-23 21:36:35
Tôi vừa thử scrollFollow và có vẻ như nó hoạt động rất tốt. Không phải ngay lập tức như Timothy nói, nhưng nếu bạn hạnh phúc vì nó lướt lên và xuống trang, nó hoàn hảo! – Paul