Lazy loading

Jspreadsheet Pro implements a smart virtual DOM management that brings a greater performance. In the example below, the spreadsheet handles 2 million cells (200K x 10 columns).



Source code

<html>
<script src="https://jspreadsheet.com/v7/jspreadsheet.js"></script>
<link rel="stylesheet" href="https://jspreadsheet.com/v7/jspreadsheet.css" type="text/css" />
<script src="https://jsuites.net/v4/jsuites.js"></script>
<link rel="stylesheet" href="https://jsuites.net/v4/jsuites.css" type="text/css" />

<div id="spreadsheet"></div>

<script>
var data = [];
document.addEventListener('DOMContentLoaded', function() {
    for (var j = 0; j < 500000; j++) {
        data[j] = [];
        for (var i = 0; i < 10; i++) {
            data[j][i] = jspreadsheet.helpers.getColumnNameFromCoords(i, j);
        }
    }

    var spreadsheet = jspreadsheet(document.getElementById('spreadsheet'), {
        data: data,
        tableOverflow: true,
        lazyLoading: true,
        lazyColumns: true,
        onlazyloading: function(el, addedRows, removedRows) {
            // Related events
        },
        license: 'ODQ4MTVkM2U4ZjhhZjQ0ZWRkZGZlM2E3ZmMyZmMxNzMyNjAxMDZkN2EwNmUwZDcwODNmZTg3ZGNkZjYzYWE4ZjYzNDJiOGFkZGQ0YTE5OGU3MzBiNWRjYWVkYjg2ZTJjMDVhMzc5YTY3ZWQzODRmZTA4NmE2YWNjYWEzYmRiNGQsZXlKdVlXMWxJam9pU25Od2NtVmhaSE5vWldWMElpd2laR0YwWlNJNk1UWTJORFF5TWpZNU9Td2laRzl0WVdsdUlqcGJJbXB6Y0hKbFlXUnphR1ZsZEM1amIyMGlMQ0pqYjJSbGMyRnVaR0p2ZUM1cGJ5SXNJbXB6YUdWc2JDNXVaWFFpTENKamMySXVZWEJ3SWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpJaXdpYzJOdmNHVWlPbHNpZGpjaUxDSjJPQ0lzSW5ZNUlpd2lZMmhoY25Seklpd2labTl5YlhNaUxDSm1iM0p0ZFd4aElpd2ljR0Z5YzJWeUlpd2ljbVZ1WkdWeUlpd2lZMjl0YldWdWRITWlMQ0pwYlhCdmNuUWlMQ0ppWVhJaUxDSjJZV3hwWkdGMGFXOXVjeUlzSW5ObFlYSmphQ0pkTENKa1pXMXZJanAwY25WbGZRPT0='
    });
});
<script>

</script>
</html>

How the jspreadsheet lazy loading works

A brief visualization on how the lazy loading works on a jspreadsheet table.