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/v5/jsuites.js"></script> <link rel="stylesheet" href="https://jsuites.net/v5/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: 'N2E4OWU5YzlkZGM4N2E1NGU5NTE4ZDgzYzI5Yjk0OWNiNjc5ZjgwZmI2MzMxOTkzMDM2YmZiZDYxYTZlMTI5NjJiYzNiZGIzMzAyNjJmYTVkN2NjYzhkYjc5YjNmMDdhOTc0MzFhMzNkNTQwMjQ0Y2ZiZDU5YTkwMGI0YjVlMWYsZXlKdVlXMWxJam9pU25Od2NtVmhaSE5vWldWMElpd2laR0YwWlNJNk1UWTVOalE1T0RJMk1pd2laRzl0WVdsdUlqcGJJbXB6Y0hKbFlXUnphR1ZsZEM1amIyMGlMQ0pqYjJSbGMyRnVaR0p2ZUM1cGJ5SXNJbXB6YUdWc2JDNXVaWFFpTENKamMySXVZWEJ3SWl3aWQyVmlJaXdpYkc5allXeG9iM04wSWwwc0luQnNZVzRpT2lJek5DSXNJbk5qYjNCbElqcGJJblkzSWl3aWRqZ2lMQ0oyT1NJc0luWXhNQ0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owSWl3aVltRnlJaXdpZG1Gc2FXUmhkR2x2Ym5NaUxDSnpaV0Z5WTJnaUxDSndjbWx1ZENJc0luTm9aV1YwY3lKZExDSmtaVzF2SWpwMGNuVmxmUT09' }); }); <script> </script> </html>
How the jspreadsheet lazy loading works
A brief visualization on how the lazy loading works on a jspreadsheet table.