用WebWorker解决:
//浏览器切换事件
document.addEventListener('visibilitychange', function() {
if(document.hidden) { console.log('页面不可见')}
if (document.visibilityState === "visible"){console.log('页面可见')}
})
webWorker监听:
var w = new Worker('./worker.js');//监听worker.js
w.onmessage = function(event){ console.log(event.data); }
w.onerror = function (event) {
console.error(event.filename + ':' + event.message);
//如果发生错误,立即终止代码
w.terminate();
}
worker.js中:
setInterval(function() {
const myDate = new Date();
const currentDate = myDate.getMinutes() + '分'+ myDate.getSeconds() + '秒' +
myDate.getMilliseconds() + '毫秒';
postMessage(currentDate);
}, 500);