재우니의 블로그



https://clusterize.js.org

https://codepen.io/thdoan/pen/NgqmVG


Tiny vanilla JS plugin to display large data sets easily

Tiny  vanilla Js 플러그인 라고 불리며, 대용량의 데이터를 쉽게 table 태그에 보여줍니다. jQuery 를 사용하지 않아 느리진 않은듯 싶습니다. 공식사이트 주소는 https://github.com/NeXTs/Clusterize.js 입니다.


<style>
body {
font: normal 16px/1.2 Calibri, sans-serif;
}
.clusterize table {
width: 100%;
border: 1px solid #000;
border-collapse: collapse;
border-spacing: 0;
}
.clusterize td {
border: 1px solid #000;
}
</style>

<p>Try dragging the scrollbar.</p>

<h3>text = fast</h3>
<div class="clusterize">
<div id="scroll-area1" class="clusterize-scroll">
<table>
<tbody id="content-area1" class="clusterize-content">
</tbody>
</table>
</div>
</div>

<h3>input = slow</h3>
<div class="clusterize">
<div id="scroll-area2" class="clusterize-scroll">
<table>
<tbody id="content-area2" class="clusterize-content">
</tbody>
</table>
</div>
</div>

<script src="./clusterize.min.js"></script>
<script>
var aRows1 = [];
for (var i=1; i<5001; ++i) {
aRows1.push('<tr><td>input</td><td>input</td><td>input</td><td>input</td><td>input</td></tr>');
}

var clusterize1 = new Clusterize({
rows: aRows1,
scrollId: 'scroll-area1',
contentId: 'content-area1'
});

var aRows2 = [];
for (var i=1; i<5001; ++i) {
aRows2.push('<tr><td><input></td><td><input></td><td><input></td><td><input></td><td><input></td></tr>');
}

var clusterize2 = new Clusterize({
rows: aRows2,
scrollId: 'scroll-area2',
contentId: 'content-area2'
});
</script>