mirror of
https://github.com/servo/servo
synced 2026-05-02 04:17:38 +02:00
47 lines
1.3 KiB
HTML
47 lines
1.3 KiB
HTML
<!--
|
|
if ('onmessage' in self) { // dedicated worker
|
|
onmessage = function(e) {
|
|
postMessage(navigator.onLine);
|
|
}
|
|
} else { // shared worker
|
|
onconnect = function(e) {
|
|
e.ports[0].onmessage = function(e) {
|
|
this.postMessage(navigator.onLine);
|
|
}
|
|
}
|
|
}
|
|
/*
|
|
-->
|
|
<!doctype html>
|
|
<title>navigator.onLine in dedicated worker</title>
|
|
<pre>Log:
|
|
</pre>
|
|
<script>
|
|
var pre = document.querySelector('pre');
|
|
var worker, shared;
|
|
try { worker = new Worker('#'); } catch(e) { pre.textContent += '\nnew Worker threw: ' + e.message; }
|
|
try { shared = new SharedWorker('#', ''); } catch(e) { pre.textContent += '\nnew SharedWorker threw: ' + e.message; }
|
|
if (worker) {
|
|
worker.onmessage = function(e) {
|
|
pre.textContent += '\ndedicated worker: ' + e.data;
|
|
}
|
|
}
|
|
if (shared) {
|
|
shared.port.onmessage = function(e) {
|
|
pre.textContent += '\nshared worker: ' + e.data;
|
|
}
|
|
}
|
|
function update() {
|
|
pre.textContent += '\n\n' + new Date() + '\n<script>: ' + navigator.onLine;
|
|
if (worker) worker.postMessage(1);
|
|
if (shared) shared.port.postMessage(1);
|
|
}
|
|
update();
|
|
ononline = onoffline = update;
|
|
</script>
|
|
<p>As you go online and offline, the log should be filled with the correct status of navigator.onLine.</p>
|
|
<p><button onclick="update()">Check navigator.onLine status</button></p>
|
|
<!--
|
|
*/
|
|
//-->
|