`, "text/html").getElementsByClassName(wrapoutputclass)[0];
if (output.children.length === 1 && output.children[0].tagName === "P" && output.children[0].attributes.length === 0) {
output.innerHTML = output.children[0].innerHTML;
}
output.classList.add("mw-parser-output", "templateAsyncLoadRoot");
ele.after(output);
ele.style.display = "none";
mw.hook("wikipage.content").fire($(output));
return;
} catch (e) {
console.error("[widget:TemplateAsyncLoad]", `[${title}]`, "error #", i, e);
if (i >= 2) {
ele.removeAttribute("style");
const pre = document.createElement("pre");
pre.innerText = `异步模板加载发生错误:${typeof e === "string" ? e : e instanceof Error ? `${e}${e.stack ? ` @ ${e.stack}}` : ""}` : JSON.stringify(e)}`;
ele.innerHTML = "";
ele.append(pre);
}
}
}
};
const lazyLoadObserver = new IntersectionObserver((entries) => {
for (const entry of entries) {
if (entry.isIntersecting) {
const lazyTarget = entry.target;
load(lazyTarget);
lazyLoadObserver.unobserve(lazyTarget);
}
}
});
for (const ele of [...document.querySelectorAll(".TemplateAsyncLoad")]) {
lazyLoadObserver.observe(ele);
}
}]);