[javascript] DataTables에서 여러 개의 표를 동기화하여 스크롤링하는 방법은 무엇인가요?

DataTable은 표 데이터를 간편하게 표시하고 관리할 수 있는 JavaScript 라이브러리입니다. 여러 개의 표를 동기화하여 스크롤링하는 방법에 대해 알아보겠습니다.

  1. DataTable 초기화: DataTable을 사용하기 위해 먼저 필요한 표를 초기화합니다. 각각의 표는 고유한 ID를 가져야 합니다.
$(document).ready(function() {
    $('#table1').DataTable();
    $('#table2').DataTable();
});
  1. 스크롤 이벤트 핸들링: 스크롤 이벤트를 감지하여 동기화를 수행할 수 있습니다. 다음과 같은 코드를 사용하여 스크롤 이벤트를 핸들링할 수 있습니다.
$(document).on('scroll', function() {
    var scrollTop = $(this).scrollTop();  // 현재 스크롤 위치

    // 첫 번째 표의 스크롤 위치를 설정
    $('#table1').DataTable().scroller().scrollToRow(scrollTop).draw(false);

    // 두 번째 표의 스크롤 위치를 설정
    $('#table2').DataTable().scroller().scrollToRow(scrollTop).draw(false);
});
  1. CSS 스타일링: 표의 스크롤 동기화를 위해 CSS 스타일링을 적용해야 합니다. 각각의 표를 동일한 크기로 설정하고, 스크롤을 숨기고 ‘display: block’ 속성을 추가합니다.
.table-container {
    width: 500px;
    height: 300px;
    overflow: hidden;
    position: relative;
}

.table-container table {
    display: block;
}

위의 방법을 사용하면 두 개의 표를 동기화하여 스크롤할 수 있습니다. 스크롤 위치가 변경되면 각각의 표가 자동으로 스크롤됩니다.

더 자세한 내용은 DataTables 공식 문서를 참조해주세요.