我设计了一个html5页面,当他们的设备没有互联网连接时,我想向那些访问我的网站的人显示。例如www.sweetwater.com
我已经准备好网页,我只想知道该怎么做以及放在哪里,以便在用户没有互联网连接时被调用
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="Keywords" content="Group, KSE, Media, Pro, Content, distribution, net, Entertainment, KSE FC,Restaurant Klem, Lloyd, Mwenya">
<meta name="Description" content="Group KSE">
<meta name="author" content="Klem Lloyd Mwenya">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Device Offline</title>
<link href="css/landing.css" rel="stylesheet" type="text/css">
<link href="https://fonts.googleapis.com/css?family=Abel|Montserrat|Patua+One" rel="stylesheet">
</head>
<!-------------------Widgets title icon--------------------->
<link href="img/group_kse_logo(tight_frames).png" rel="shortcut icon" type="image/x-icon" />
<body>
<div class="navRibbon">
</div>
<div class="offlineWrapper">
<header>
<h1>Group KSE</h1>
<div class="offlineBanner">
<h3>We Aim to Serve You Better, Everytime!</h3>
<h4>Experience Website User Interfaces that interact intuitively with you as a person and your emotions!</h4>
</div>
</header>
<h2>Oops!!</h2>
<h3 class="offlineCaution">It appears that you're offline!! <br> Check your internet connection...</h3>
<div class="offlineLogo">
<img src="img/group_kse_logo(tight_frames).png" alt="Group KSE Logo" />
</div>
</div>
<footer class="ulukasa">
<div id="container">
<a href="#" id="copyright"></a>
<p class="text-center">© 2019</p>
<p class="text-center">Group KSE</p>
<p class="text-center">All rights reserved</p>
</div>
<!-------------------------Visitor Counter ------------------------------------->
</footer>
</body>
</html>
//And here is my css3 code:
/*---------------- Offline Notifier Page --------------*/
.navRibbon {
width: 100%;
height: 45px;
background-color: #2F2C2C;
border: 1px solid white;
margin: 0 0 2px;
}
.offlineWrapper {
width: 80%;
margin: auto;
text-align: center;
}
header {
background: url(../img/bubble-clean-clear.jpg) no-repeat;
background-size: 100% 100%;
width: 100%;
height: 200px;
margin: 0 auto 40px;
padding: 10px 0 0;
box-shadow: -3px 2px 20px 0 black;
}
.offlineBanner {
}
header>h1 {
font-size: 50px;
color: greenyellow;
text-shadow: -3px 3px 7px black;
margin: 10px auto;
}
header>.offlineBanner {
width: 70%;
margin: auto;
padding: 10px;
background-color: #5F3E8F;
opacity: .7;
}
header>.offlineBanner>h3 {
color: #fff;
line-height: 24px;
}
header>.offlineBanner>h4 {
color: yellow;
line-height: 18px;
}
.offlineWrapper>h2 {
font-size: 42px;
}
.offlineWrapper>.offlineLogo {
width: 45%;
margin: 0 auto 50px;
}
.offlineWrapper>.offlineLogo img {
width: 100%;
}
.offlineWrapper>.offlineCaution {
background-color: #9E2022;
color: aliceblue;
padding: 8px;
width: 40%;
margin: 20px auto 40px;
line-height: 33px;
font-size: 18px;
}
我目前还不知道该怎么做,所以我没有采取此步骤,但是一旦我了解到,我希望在设备没有互联网的情况下显示页面,如果有互联网连接,则可以看到正常的网站登录页面。
最佳答案
您可以使用JavaScript解决方案来做到这一点。
网络信息API
阿贾克斯电话
服务人员
快取清单
您可以尝试从MDN实现Network Information API,但这并不支持所有浏览器。因此,在后备中,您可以定期通过Ajax调用一个json文件并检查错误,该错误描述了here
您还可以与ajax一起实现Service worker,因此,如果脱机ajax将返回不可用网络的预定义json,您可以在JavaScript中对其进行处理。
不建议使用缓存清单,因此请不要使用它。