如何解决使HTML页面在5分钟后隐藏所有内容,并且仅在30分钟后再次显示
我正在创建一个页面,该页面完成后将让人们稍事休息5分钟,然后在5分钟结束后,所有HTML元素将隐藏起来,并且在接下来的30分钟内将无法访问。我尝试使用onload事件,键入的短间隔仅用于测试,但我想知道是否有人可以指出正确的方向。
PS:这是在Google Apps脚本项目中编码的。我所有的code.gs文件都有获取html服务的代码。
<!DOCTYPE html>
<script>
var elements = document.getElementsByTagName("*");
function kick(){
elements.style.display = 'none';
}
var interval = setInterval(kick,3000; );
</script>
<style>
button {
border-radius: 20px;
background-color: crimson ;
color: aqua;
border-width: 5px;
}
</style>
<html onload = 'timeOut()'>
<head>
<style>
* { padding: 0; margin: 0; }
canvas { background: #eee; display: block; margin: 0 auto; }
</style>
</head>
<body >
<canvas id="myCanvas" width="480" height="320"></canvas>
<script>
function playGame() { var canvas = document.getElementById("myCanvas");
var ctx = canvas.getContext("2d");
var x = canvas.width/2;
var y = canvas.height-30;
var dx = 2;
var dy = -2;
var ballRadius = 12;
var paddleHeight = 10;
var paddleWidth = 75;
var paddleX = (canvas.width-paddleWidth) / 2;
var rightpressed = false;
var leftpressed = false;
var difficulty = 10
var score = 0
var gameRunning = false
function drawBall() {
ctx.beginPath();
ctx.arc(x,y,ballRadius,Math.PI*2);
ctx.fillStyle = "#0095DD";
ctx.fill();
ctx.closePath();
}
function drawPaddle() {
ctx.beginPath();
ctx.rect(paddleX,canvas.height-paddleHeight,paddleWidth,paddleHeight);
ctx.fillStyle = "#0095DD";
ctx.fill();
ctx.closePath();
}
function drawscore() {
ctx.font = "24px ";
ctx.fillStyle = "#0095DD";
ctx.fillText("score: "+score,8,20);
}
function draw() {
ctx.clearRect(0,canvas.width,canvas.height);
drawBall();
drawPaddle();
drawscore();
x += dx;
y += dy;
if(x + dx > canvas.width-ballRadius || x + dx < ballRadius) {
dx = -dx;
}
if(y + dy < ballRadius) {
dy = -dy;
} else if(y + dy > canvas.height-ballRadius) {
if(x > paddleX && x < paddleX + paddleWidth) {
dy = -dy;
difficulty = difficulty + 0.5;
score = score + 1;
}
else {
alert("GAME OVER");
document.location.reload();
clearInterval(interval);
}
}
if(rightpressed) {
paddleX += 5;
if (paddleX + paddleWidth > canvas.width){
paddleX = canvas.width - paddleWidth;
}
}
else if(leftpressed) {
paddleX -= 5;
if (paddleX < 0){
paddleX = 0;
}
}
}
document.addEventListener("keydown",keyDownHandler,false);
document.addEventListener("keyup",keyUpHandler,false);
function keyDownHandler(e) {
if(e.key == "Right" || e.key == "ArrowRight") {
rightpressed = true;
}
else if(e.key == "Left" || e.key == "ArrowLeft") {
leftpressed = true;
}
}
function keyUpHandler(e) {
if(e.key == "Right" || e.key == "ArrowRight") {
rightpressed = false;
}
else if(e.key == "Left" || e.key == "ArrowLeft") {
leftpressed = false;
}
}
var interval = setInterval(draw,difficulty);}
</script>
<button onclick = 'playGame()'>play keep it alive </button>
</body>
<script>
function lookAtPup() {
var x = document.getElementById("a");
var y = document.getElementById('b')
var z = document.getElementById('c')
var xx = document.getElementById('d')
var yy = document.getElementById('e')
var zz = document.getElementById('f')
var xxx = document.getElementById('g')
var yyy = document.getElementById('h')
var zzz = document.getElementById('i')
var xxxx = document.getElementById('j')
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
if (y.style.display === "none") {
y.style.display = "block";
} else {
y.style.display = "none";
}
if (z.style.display === "none") {
z.style.display = "block";
} else {
z.style.display = "none";
}
if (xx.style.display === "none") {
xx.style.display = "block";
} else {
xx.style.display = "none";
}
if (yy.style.display === "none") {
yy.style.display = "block";
} else {
yy.style.display = "none";
}
if (zz.style.display === "none") {
zz.style.display = "block";
} else {
zz.style.display = "none";
}
if (xxx.style.display === "none") {
xxx.style.display = "block";
} else {
xxx.style.display = "none";
}
if (yyy.style.display === "none") {
yyy.style.display = "block";
} else {
yyy.style.display = "none";
}
if (zzz.style.display === "none") {
zzz.style.display = "block";
} else {
zzz.style.display = "none";
}
if (xxxx.style.display === "none") {
xxxx.style.display = "block";
} else {
xxxx.style.display = "none";
}
}
</script>
<button onclick = 'lookAtPup()'> Look at a puppy </button>
<img id = 'a' style = 'display: none' src = 'example image'>
<img id = 'b' style = 'display: none;' src = 'example image'>
<img id = 'c' style = 'display: none;' src = 'example image'>
<img id = 'd' style = 'display: none;' src = 'example image'>
<img id = 'e' style = 'display: none;' src = 'example image'>
<img id = 'f' style = 'display: none;' src = 'example image'>
<img id = 'h' style = 'display: none;' src = 'example image'>
<img id = 'i' style = 'display: none;' src = 'example image'>
<img id = 'j' style = 'display: none;' src = 'example image'>
<button onclick = 'seeSatisfying()'> see something satisfying </button>
<img id = 'g1' style = 'display: none;' src = 'example image'>
<img id = 'g2' style = 'display: none;' src = 'example image'>
<script>
function seeSatisfying(){
var gifOne = document.getElementById('g1')
var gifTwo = document.getElementById('g2')
if (gifOne.style.display === 'none') {
gifOne.style.display = 'block';
}
else {
gifOne.style.display = 'none';
}
if (gifTwo.style.display === 'none') {
gifTwo.style.display = 'block';
}
else {
gifTwo.style.display = 'none';
}
}
</script>
</html>
解决方法
我对Google Apps脚本不熟悉,但是如果您将elements
设置为body标签,则看起来一切都可能消失,因为它包含了页面上的所有元素,因此使其显示没有人能使其中的一切都看不见。
除此之外,您的代码看起来还不错。
您也许可以做类似的事情
var body = document.querySelector('body')
setInterval(()=>{
body.style.display = 'initial' ;
setTimeout(()=>{
body.style.display = 'none'
},300000)
},18300000)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。