Source code

Revision control

Copy as Markdown

Other Tools

<!DOCTYPE html>
<meta charset="utf8">
<script type="text/javascript">
window.onload = async () => {
parent.postMessage("ready", "*");
}
window.addEventListener("message", async function listener(event) {
//window.addEventListener("load", async function listener(event) {
if (event.data[0] == "gimme") {
// eslint-disable-next-line
var s = `<html><script>
let result = {
hardwareConcurrency : navigator.hardwareConcurrency
};
window.parent.document.querySelector('#result').textContent = JSON.stringify(result);
window.parent.postMessage(["frame_response"], "*");`;
// eslint-disable-next-line
s += `</` + `script></html>`;
let b = new Blob([s], { type: "text/html" });
let url = URL.createObjectURL(b);
var iframe = document.createElement("iframe");
iframe.src = url;
document.body.append(iframe);
} else if (event.data[0] == "frame_response") {
let result = document.querySelector("#result").textContent;
parent.postMessage(JSON.parse(result), "*");
}
});
</script>
<body>
<output id="result"></output>
</body>