JSFiddle - React, Tailwind, and code Playground
HTML
<pre id="log"></pre>
JavaScript
function log(s) {
$("#log").append(s + "<br>");
}
function loaddata(data, isfinal) {
log("loaddata called with " + (isfinal ? "final" : "partial") + " content");
}
var partialResponseProcessing;
var xhr = $.ajax({
type: "GET",
url: '/',
success: function(data) {
clearInterval(partialResponseProcessing);
log("ajax success");
loaddata(data, true);
},
error: function() {
clearInterval(partialResponseProcessing);
log("ajax error");
}
});
var partial = "";
var prevcount = 1;
partialResponseProcessing = setInterval(function() {
try {
if (xhr.responseText && xhr.responseText.length > partial.length) {
partial = xhr.responseText;
if ($(partial).filter("*").length > prevcount) {
prevcount = $(partial).filter("*").length;
loaddata($(partial).filter("*:not(:last)"), false);
}
}
} catch(e) {
alert(e);
}
}, 1);