Postingan lainnya
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
Cara menampilkan Alertify hanya sekali pada kondisi tertentu?
Saya ingin menampilkan pop up dengan menggunakan library Alertify.js ketika suatu kondisi tertentu dia akan muncul namun hanya sekali saja. Kasus saya yaitu kondisi saya sudah memenuhi dan alertifynya sudah muncul namun ketika muncul alertnya tidak mau menghilang dia malah muncul terus,itu cara mengatasinya bagaimana ya kak?
untuk code nya seperti ini kak.
$(document).ready(function() {
var attr_data_date = $('#demo').attr('data-date');
// console.log(attr_data_date);
// Set the date we're counting down to
var countDownDate = new Date(attr_data_date).getTime();
// console.log(countDownDate);
// Update the count down every 1 second
var x = setInterval(function() {
// Get today's date and time
var now = new Date().getTime();
// Find the distance between now and the count down date
var distance = countDownDate - now;
// Time calculations for days, hours, minutes and seconds
var days = Math.floor(distance / (1000 * 60 * 60 * 24));
var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
var seconds = Math.floor((distance % (1000 * 60)) / 1000);
// Output the result in an element with id="demo"
document.getElementById("demo").innerHTML = days + "d " + hours + "h " +
minutes + "m " + seconds + "s ";
// If the count down is over, write some text
if (minutes == 1) {
alertify
.delay(100000)
.log("Waktu Kurang Dari 1 Menit");
} else if (distance < 0) {
clearInterval(x);
document.getElementById("demo").innerHTML = "Waktu Habis";
alertify
.delay(10000)
.log("Waktu Habis");
}
}, 1000);
});
Jadi ketika waktu nya sudah mencapai 1 menit alert nya muncul kak,namun disini kasusnya ketika satu menit tersebut dia malah muncul terus.Itu bagaimana cara mengatasinya ya kak,agar alertnya muncul satu kali saja? Terimakasih
1 Jawaban:
Jawaban Terpilih
<div>hai <a href="https://sekolahkoding.com/user/HendryScootKennedy">@HendryScootKennedy</a><br><br>Saya coba bantu jawab ya <br><br>kamu bisa gunakan flag agar alertnya tidak muncul lagi<br><br>untuk contoh scriptnya bisa seperti di bawah ini<br><br></div><pre>$(document).ready(<strong>function() {</strong> <strong> var attr_data_date = $('#demo').attr('data-date');</strong>
<strong> </strong><em>// console.log(attr_data_date);</em> <strong> </strong><em>// Set the date we're counting down to</em> <strong> var countDownDate = new Date(attr_data_date).getTime();</strong> <strong> </strong><em>// console.log(countDownDate);
</em><strong> // Flag For pop up
var flagPopUpMinute = true;
var flagPopUpAfterEnd = true;</strong><em>
</em><strong> </strong><em>// Update the count down every 1 second</em> <strong> var x = setInterval(function() {</strong>
<strong> </strong><em>// Get today's date and time</em> <strong> var now = new Date().getTime();</strong>
<strong> </strong><em>// Find the distance between now and the count down date</em> <strong> var distance = countDownDate - now;</strong>
<strong> </strong><em>// Time calculations for days, hours, minutes and seconds</em> <strong> var days = Math.floor(distance / (1000 * 60 * 60 * 24));</strong> <strong> var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));</strong> <strong> var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));</strong> <strong> var seconds = Math.floor((distance % (1000 * 60)) / 1000);</strong>
<strong> </strong><em>// Output the result in an element with id="demo"</em> <strong> document.getElementById("demo").innerHTML = days + "d " + hours + "h " +</strong> <strong> minutes + "m " + seconds + "s ";</strong> <strong> </strong><em>// If the count down is over, write some text </em> <strong> if (minutes == 1 && flagPopUpMinute) {</strong> <strong> alertify</strong> <strong> .delay(100000)</strong> <strong> .log("Waktu Kurang Dari 1 Menit");
flagPopUpMinute = false; //set being False</strong>
<strong> } else if (distance < 0 && flagPopUpAfterEnd) {</strong> <strong> clearInterval(x);</strong> <strong> document.getElementById("demo").innerHTML = "Waktu Habis";</strong> <strong> alertify</strong> <strong> .delay(10000)</strong> <strong> .log("Waktu Habis");
flagPopUpAfterEnd = false; //set being False</strong>
<strong> }</strong> <strong> }, 1000);</strong> <strong> }</strong>);</pre><div><br>Semoga mambantu ya :)</div>
Tanggapan
Terimakasih kak,100% works.