left4me/l4d2web/static/js/sse.js

16 lines
416 B
JavaScript

function streamTextToElement(element) {
const url = element.dataset.sseUrl;
if (!url) {
return;
}
const source = new EventSource(url);
source.onmessage = (event) => {
element.textContent += `${event.data}\n`;
element.scrollTop = element.scrollHeight;
};
}
document.addEventListener("DOMContentLoaded", () => {
document.querySelectorAll("[data-sse-url]").forEach(streamTextToElement);
});