Halo teman-teman, untuk artikel kali ini kita akan mencoba bagaimana membuat sebuah laman loading web, sebelum menampilkan isi dari konten web tersebut.
Mungkin kita merasa jenuh ketika kita mengunjungi sebuah situs, sedangkan waktu tunggu atau loading web tersebut sangat lama, dan tentunya yang ada kita akan segera mengclose web yang sedang kita kunjungi tersebut. Bagaimana hal itu jika terjadi di web kita. Kita tidak menginginkan hal tersebut terjadi, mungkin kita bisa memberikan solusinya dengan menambahkan semacam pemberitahuan atau notifikasi.
Dalam hal ini kita akan memberikan icon loading time, bahwa web tersebut masih dalam status mengisi. Dengan cara seperti ini, pengunjung tahu bahwa web sedang mengisi, karena mereka melihat notifikasi yang sedang kita tampilkan.
Loading time disini saya menggunakan svg icon yang teman-teman bisa kalian generat secara otomatis disini.
Langsung saja
<div id="page">
<p>There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text. All the Lorem Ipsum generators on the Internet tend to repeat predefined chunks as necessary, making this the first true generator on the Internet. It uses a dictionary of over 200 Latin words, combined with a handful of model sentence structures, to generate Lorem Ipsum which looks reasonable. The generated Lorem Ipsum is therefore always free from repetition, injected humour, or non-characteristic words etc.</p>
</div>
<div id="loading"></div>
bagian tersebut untuk bagian badan web
Kemudian bagian dibawah ini adalah CSSnya
<style type="text/css">
body {
font-size: 14px;
}
#page {
display: none;
}
#loading {
display: block;
position: absolute;
top: 0;
left: 0;
z-index: 100;
width: 100vw;
height: 100vh;
background-color: rgba(192, 192, 192, 0.5);
background-image: url("default.svg");
background-repeat: no-repeat;
background-position: center;
}
</style>
dan tentunya kita memerlukan file javascript sebagai pemicunya
<script type="text/javascript">
function onReady(callback) {
var intervalID = window.setInterval(checkReady, 5000);
function checkReady() {
if (document.getElementsByTagName('body')[0] !== undefined) {
window.clearInterval(intervalID);
callback.call(this);
}
}
}
function show(id, value) {
document.getElementById(id).style.display = value ? 'block' : 'none';
}
onReady(function () {
show('page', true);
show('loading', false);
});
</script>
Untuk hasilnya kalian bisa melihat, seperti dibawah ini