<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Hasil Data Keluaran Angka Live Draw Terlengkap Tercepat</title>
<link rel="icon" type="image/png" href="https://jamepix.com/public/liveawl/totohoki.png"/>
<meta name="title" content="Hasil Data Keluaran Angka Live Draw Terlengkap Tercepat" />
<meta name="description" content="Temukan hasil live draw togel hari ini dengan data akurat dan terupdate setiap hari! Result togel Hongkong, Sydney, Kalifornia, Singapore, China, Macau, Cambodia, Taiwan, Morocco, Japan, Texas, dan Jakarta. Data togel lengkap dan terpercaya di sini!" />
<!-- Open Graph / Facebook -->
<meta property="og:type" content="website" />
<meta property="og:url" content="https://livedrawmisteri.com/" />
<meta property="og:title" content="Hasil Data Keluaran Angka Live Draw Terlengkap Tercepat" />
<meta property="og:description" content="Temukan hasil live draw togel hari ini dengan data akurat dan terupdate setiap hari! Result togel Hongkong, Sydney, Kalifornia, Singapore, China, Macau, Cambodia, Taiwan, Morocco, Japan, Texas, dan Jakarta. Data togel lengkap dan terpercaya di sini!" />
<meta property="og:image" content="https://jamepix.com/public/liveawl/liveawl-banner-ff9cd542bd8dcccebc4dd265e9e03f23.gif" />
<!-- Twitter -->
<meta property="twitter:card" content="summary_large_image" />
<meta property="twitter:url" content="https://livedrawmisteri.com/" />
<meta property="twitter:title" content="Hasil Data Keluaran Angka Live Draw Terlengkap Tercepat" />
<meta property="twitter:description" content="Temukan hasil live draw togel hari ini dengan data akurat dan terupdate setiap hari! Result togel Hongkong, Sydney, Kalifornia, Singapore, China, Macau, Cambodia, Taiwan, Morocco, Japan, Texas, dan Jakarta. Data togel lengkap dan terpercaya di sini!" />
<meta property="twitter:image" content="https://jamepix.com/public/liveawl/liveawl-banner-ff9cd542bd8dcccebc4dd265e9e03f23.gif" />
<meta name="google-site-verification" content="4vnIAGKWo9OGpHk4sUAwtF1FDgxYaWMvGefZAMJcds4" />
<meta name="google-site-verification" content="uUS-1lw9SiGYUSFUh6r-TVsiWGw7eoRM8v8-N39fJAg" />
<link rel="canonical" href="https://livedrawmisteri.com/" />
<link rel="amphtml" href="https://pub-1bd38bc4acb8dc51bba088eea4f0c1a1.r2page.dev/livedraw/" />
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
<style type="text/css">
body {
background: rgb(17 24 39 / 1);
color: #fff;
padding: 1rem .5rem;
}
.sr-only {
display: none;
}
.outerbox {
border-radius: 5px 5px 5px 5px;
border: #ffd700 1px solid;
-moz-border-radius: 5px;
-webkit-border-radius: 5px 5px 5px 5px;
border-radius: 5px 5px 5px 5px;
background: #000000;
width: 100%;
}
.headbox {
padding: .25rem;
display: block;
margin: 0 auto;
max-width: 360px;
}
.headbox img {
width: 100%;
height: auto;
min-height: 30px;
display: block;
}
.captionbox {
margin-top: .25rem;
margin-bottom: .25rem;
display: grid;
grid-template-columns: 80% 20%;
column-gap: 4px;
text-transform: uppercase;
}
.runningtextbox {
background-color: #ffd700;
padding: 5px 4px;
color: #333;
width: calc(100% - 2px);
}
.running-container {
background-color: #000;
color: #fff;
overflow: hidden;
white-space: nowrap;
}
.running-text {
-moz-transform: translateX(100%);
-webkit-transform: translateX(100%);
transform: translateX(100%);
-moz-animation: text-animation 15s linear infinite;
-webkit-animation: text-animation 15s linear infinite;
animation: text-animation 15s linear infinite;
}
.liveshowbox {
background-color: #ffd700;
padding: 5px 4px;
color: #333;
display: inline-block;
}
.liveshow-container {
background-color: #000;
color: #ffff00;
text-align: center;
}
.liveshow-text {
animation: blink-animation 1s steps(5, start) infinite;
-webkit-animation: blink-animation 1s steps(5, start) infinite;
}
.blinker {
animation: blink-animation 1s steps(5, start) infinite;
-webkit-animation: blink-animation 1s steps(5, start) infinite;
}
@keyframes blink-animation {
to {
visibility: hidden;
}
}
@-webkit-keyframes blink-animation {
to {
visibility: hidden;
}
}
@-moz-keyframes text-animation {
from { -moz-transform: translateX(100%); }
to { -moz-transform: translateX(-100%); }
}
@-webkit-keyframes text-animation {
from { -webkit-transform: translateX(100%); }
to { -webkit-transform: translateX(-100%); }
}
@keyframes text-animation {
from {
-moz-transform: translateX(100%);
-webkit-transform: translateX(100%);
transform: translateX(100%);
}
to {
-moz-transform: translateX(-100%);
-webkit-transform: translateX(-100%);
transform: translateX(-100%);
}
}
</style>
</head>
<body>
<div class="container outerbox">
<div class="d-block col-lg-6 mx-auto">
<div class="captionbox fs-6 mt-2">
<div class="runningtextbox">
<div class="running-container">
<div class="running-text">
<span style="color: #ffff00">[LIVE DRAW]</span>
<span id="datetimenow">Jumat, 24 Januari 2025</span>
</div>
</div>
</div>
<div class="liveshowbox">
<div class="liveshow-container">
<span class="liveshow-text">LIVE</span>
</div>
</div>
</div>
<div class="col-12 col-md-10 mx-auto">
<a href="https://vviplive2025.org/" target="_blank"><img src="https://jamepix.com/public/liveawl/liveawl-banner-ff9cd542bd8dcccebc4dd265e9e03f23.gif" alt="Data HK" class="col-12"></a>
</div>
</div>
<div class="d-block col-lg-8 mx-auto">
<img src="https://jamepix.com/public/liveawl/liveawl-banner-9f29ffbfc4d725e52b62365d5035157d.png" alt="JT Group" class="col-12">
</div>
<div class="d-block col-lg-6 mx-auto">
<div class="text-center text-warning mt-2 border border-warning">
<span class="blinker">TANPA REFRESH, AUTO UPDATE !!</span>
</div>
</div>
<div id="itemcontent" class="d-flex flex-wrap justify-content-center px-1 py-2 mb-1">
<div class="col-12 d-flex py-3 justify-content-center">
<div class="spinner-border text-warning" role="status" style="width:48px;height:48px">
<span class="sr-only">Loading...</span>
</div>
</div>
</div>
<div class="d-block col-12 my-5 text-center">
<h4>The Best Live Draw Result</h4>
<p>Menampilkan live draw atau hasil undian secara langsung dan transparan untuk semua pecinta togel. Data hasil keluaran angka akan ditampilkan secara real-time tanpa adanya manipulasi. Dengan memilih Bandar Togel Terpercaya yang tepat, banyak pasaran yang menawarkan variasi taruhan seperti 4D, 3D, dan 2D sehingga para sultan togel dapat memahami untuk membaca data statistik secara efektif.</p>
<p>Data Keluaran Sydney Lotto memiliki peluang kemenangan yang besar dan sistemnya sangat fair. Togel Singapore (SGP) juga dapat menjadi favorit karena hampir setiap hari memiliki jadwal pengeluaran angka serta selalu diawasi secara resmi oleh Singapore Pools. Yang Paling Terkenal ialah Data Toto Macau merupakan pasaran terpopuler dengan jadwal pengeluaran angka yang fleksibel dan juga memiliki peluang kemenangan yang jauh lebih tinggi.</p>
<p>Selain pasaran Asia seperti Data Hongkong, Data Singapore, Data Sydney, Data China, Data Jepang, Data Jakarta dan Data Macau. Terdapat juga psaran Global yang terkenal, seperti data texas, data morroco, data alhambra, data istanbul, data kharkiv, data virginia, data oregon, data new york, data new jeysey, data georgia, data mediterania, data germany pluss, dan pasaran lainnya yang dapat meberikan peluang kemenangan yang besar.</p>
<p>live draw
live draw hk
live draw sdy
live draw sgp
live draw taiwan
live draw china
live draw cambodia
live draw sdy lotto
live draw macau
live draw japan
live draw hk lotto
live draw hk pools
live draw hk malam ini
live draw sgp tercepat
live draw toto macau
live draw sdy pools
draw live hk
draw live sdy
draw live sgp
draw live cambodia
draw live indiana evening
draw live taiwan
draw live sydney
draw live china
draw live hk lotto
draw live sdy lotto
draw live macau
draw live sgp hari ini
draw live sdy 6d pools
draw live hawai
draw live jepang
live draw hk hari ini
live draw hongkong pools
live draw hongkong
live draw sydney pools
live draw singapore
live draw sidney
live draw hongkong lotto
draw live
keno live draw
</p>
<p0>data keluaran
data keluaran hk
data keluaran macau
data keluaran sdy
data keluaran hk 2025
data keluaran cambodia
data keluaran taiwan
data keluaran sgp
data keluaran toto macau
data keluaran china
data keluaran cambodia 2025
data keluaran macau 2025
data keluaran hk lotto
data keluaran hk lotto 2025
data keluaran sdy lotto
data keluaran hk 2023
keluaran data hk
keluaran data sidney
keluaran data macau
keluaran data hongkong
keluaran data sgp
keluaran data hk 2025
keluaran data sdy
keluaran data kamboja
keluaran data hk 6d
keluaran data taiwan
keluaran data hongkong malam ini
keluaran data sgp 2025
keluaran data hk lotto
keluaran data sidney hari ini
keluaran data sdy 2025
data keluaran sdy 2025
data keluaran togel
data keluaran kamboja
data keluaran hk 6d
</p>
<p class="my-4">Copyright ©2010-2025 JATENG TOTO GROUP</p>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
<script type="text/javascript">
const getCurrentTime = async () => {
var timeCount = 0;
var dayNames = ['Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu'];
var monthNames = ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'];
var today = new Date();
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth() + 1).padStart(2, '0');
var ff = monthNames[today.getMonth()];
var yyyy = today.getFullYear();
var dayName = dayNames[today.getDay()];
var hh = String(today.getHours()).padStart(2, '0');
var ii = String(today.getMinutes()).padStart(2, '0');
var ss = String(today.getSeconds()).padStart(2, '0');
today = dayName + ', ' + dd + ' ' + ff + ' ' + yyyy + ' | ' + hh + ':' + ii + ':' + ss;
const span = document.getElementById('datetimenow');
span.textContent = today;
setTimeout(getCurrentTime, 1000);
}
getCurrentTime();
</script>
<script type="text/javascript">
const interval = 1000;
var isUpdateResult = false;
function checkResetTimeResult(openTime) {
let now = new Date();
let currentHour = now.getHours();
let currentMinute = now.getMinutes();
let currentTime = currentHour + currentMinute / 60;
let [openHour, openMinute] = openTime.split(":").map(Number);
let openTimeDecimal = openHour + openMinute / 60;
let elevenFifteen = 11.25;
let twentyThreeThirty = 23.5;
if (currentTime >= 23 || currentTime < 0) {
return openTimeDecimal > currentTime || openTimeDecimal < elevenFifteen;
}
if (currentTime >= 0 && currentTime < elevenFifteen) {
return openTimeDecimal > currentTime && openTimeDecimal < elevenFifteen;
}
if (currentTime >= elevenFifteen && currentTime <= 23) {
return openTimeDecimal > currentTime && openTimeDecimal < twentyThreeThirty;
}
return false;
}
function isOpenTimeResult(openTime) {
const currentTime = new Date();
const hours = currentTime.getHours();
const minutes = currentTime.getMinutes();
function timeInMinutes(hours, minutes) {
return hours * 60 + minutes;
}
const currentMinutes = timeInMinutes(hours, minutes);
const limitTime = timeInMinutes(11, 15);
const [openHours, openMinutes] = openTime.split(':').map(Number);
const openMinutesTotal = timeInMinutes(openHours, openMinutes);
if (currentMinutes >= timeInMinutes(23, 0) && currentMinutes <= timeInMinutes(23, 59)) {
return openMinutesTotal < currentMinutes || openMinutesTotal <= limitTime;
}
if (currentMinutes >= timeInMinutes(0, 0) && currentMinutes <= limitTime) {
return openMinutesTotal < currentMinutes && openMinutesTotal <= limitTime;
}
if (currentMinutes > limitTime && currentMinutes < timeInMinutes(23, 0)) {
return openMinutesTotal < currentMinutes && openMinutesTotal <= timeInMinutes(23, 0);
}
return false;
}
function getFetchRequest(url) {
return new Promise((resolve, reject) => {
let xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.onreadystatechange = function() {
if (xhr.readyState === 4) {
if (xhr.status === 200) {
resolve(xhr.responseText);
} else {
reject(`Error: ${xhr.status}`);
}
}
};
xhr.onerror = function() {
reject('Network error');
};
xhr.send();
});
}
async function fetchAdsBanner() {
var itemresults = [];
try {
let jsonResponse = JSON.parse(await getFetchRequest('https://angka2088.com/ajaxadsbanner.json'));
const itemmaps = jsonResponse.items;
itemmaps.forEach((itemtemp, index) => {
itemresults.push(itemtemp);
});
} catch (error) {
console.error('There has been a problem with your request:', error);
}
return itemresults;
}
async function fetchAdsInfobox() {
var itemresults = [];
try {
let jsonResponse = JSON.parse(await getFetchRequest('https://angka2088.com/ajaxadscolbox.json'));
const itemmaps = jsonResponse.items;
itemmaps.forEach((itemtemp, index) => {
itemresults.push(itemtemp);
});
} catch (error) {
console.error('There has been a problem with your request:', error);
}
return itemresults;
}
function createInfoStat(result) {
htmlResult = '';
let resultValue = result.result_value;
const opendate = result.result_date;
const opentime = result.result_time;
const openvalue =result.result_value.toLowerCase();
var resultstatus = 'opened';
var timenow = new Date();
var hournow = String(timenow.getHours()).padStart(2, "0");
var minutenow = String(timenow.getMinutes()).padStart(2, "0");
var currentTime = `${hournow}:${minutenow}`;
var timeresult = new Date(`${opendate} ${opentime}:00`);
var hourresult = String(timeresult.getHours()).padStart(2, "0");
var minuteresult = String(timeresult.getMinutes()).padStart(2, "0");
var pointTime = `${hourresult}:${minuteresult}`;
var yearnow = timenow.getFullYear();
var monthnow = String(timenow.getMonth() + 1).padStart(2, '0');
var daynow = String(timenow.getDate()).padStart(2, '0');
var todaynow = `${yearnow}-${monthnow}-${daynow}`;
if (checkResetTimeResult(pointTime)) {
resultstatus='closed';
} else if (isOpenTimeResult(pointTime) && todaynow!==opendate) {
resultstatus='closed';
}
if (resultstatus=='opened') {
if (resultValue.includes(",")) {
let resSplitPrizes = resultValue.split(",");
if (resSplitPrizes.length === 3) {
htmlResult += `<div class="col-12 text-center bg-warning bg-gradient py-1 px-2 text-danger border-bottom border-1 border-success">${result.result_name} - ${result.result_time}</div>`;
} else {
htmlResult += `<div class="col-8 text-center bg-warning bg-gradient py-1 px-2 text-danger">${result.result_name} - ${result.result_time}</div>`;
}
} else {
htmlResult += `<div class="col-8 text-center bg-warning bg-gradient py-1 px-2 text-danger">${result.result_name} - ${result.result_time}</div>`;
}
if (result.result_value=='closed') {
htmlResult += `<div class="col-4 text-center bg-dark bg-gradient py-1 px-2"><div class="text-center text-warning"><div class="spinner-border spinner-border-sm" role="status"><span class="sr-only">Loading...</span></div></div></div>`;
} else if (openvalue==='off') {
htmlResult += `<div class="col-4 text-center bg-dark bg-gradient py-1 px-2">${result.result_value}</div>`;
} else {
var valPrize = result.result_value;
if (valPrize.includes(",")) {
let splitPrizes = valPrize.split(",");
if (splitPrizes.length === 3) {
splitPrizes.forEach((grandPrize, numberPrize) => {
htmlResult += '<div class="col-4 m-0 p-0 border border-1 border-success">';
htmlResult += `<div class="col-12 text-center bg-secondary bg-gradient py-1 px-2 text-dark">PRIZE ${numberPrize + 1}</div>`;
htmlResult += `<div class="col-12 text-center bg-dark bg-gradient py-1 px-2">${grandPrize}</div>`;
htmlResult += '</div>';
});
} else {
htmlResult += `<div class="col-4 text-center bg-dark bg-gradient py-1 px-2">${result.result_value}</div>`;
}
} else {
htmlResult += `<div class="col-4 text-center bg-dark bg-gradient py-1 px-2">${result.result_value}</div>`;
}
}
} else {
htmlResult += `<div class="col-8 text-center bg-warning bg-gradient py-1 px-2 text-danger">${result.result_name} - ${result.result_time}</div>`;
htmlResult += `<div class="col-4 text-center bg-dark bg-gradient py-1 px-2"><div class="text-center text-warning"><div class="spinner-border spinner-border-sm" role="status"><span class="sr-only">Loading...</span></div></div></div>`;
}
return htmlResult;
}
function splitArray(array) {
var itemcaches = [];
const length = array.length;
const fortyPercent = Math.ceil(length * 0.4);
const startThirdColumn = fortyPercent * 2;
const column1 = array.slice(0, fortyPercent);
const column2 = array.slice(fortyPercent, startThirdColumn);
const column3 = array.slice(startThirdColumn);
itemcaches.push(column1);
itemcaches.push(column2);
itemcaches.push(column3);
return itemcaches;
}
function fetchResult() {
const apiUrl = 'https://angka2088.com/ajaxlive.json';
var req = new XMLHttpRequest();
req.overrideMimeType("application/json");
req.open('GET', apiUrl, true);
req.onload = async() => {
var maxcols = 3;
var jsonResponse = JSON.parse(req.responseText);
const resultdata = jsonResponse.items;
var itemresults = [];
var itemcaches = [];
var adsresults = [];
var adscaches = [];
var numColumn = 0;
var numAdColumn = 0;
var htmlResult = '';
var numIndex = 1;
itemresults = splitArray(resultdata);
if (isUpdateResult==false) {
const resultAds = await fetchAdsBanner();
const resultAdsbox = await fetchAdsInfobox();
resultAds.forEach((itemads, index) => {
const col = resultAds.length / (maxcols-1);
if (Math.floor(index % col) === 0) {
numAdColumn++;
adscaches = [];
adsresults.push(adscaches);
}
adscaches.push(itemads);
});
itemresults.forEach(async(itemresult, index, arr) => {
var numBanner = 0;
var numAdsbox = 0;
var column = index;
var adsbanners = [];
if (index < (maxcols-1)) {
adsbanners = adsresults[index];
}
htmlResult += '<div class="col-12 col-lg-4 px-1 px-lg-3">';
itemresult.forEach((result, index, arr) => {
htmlResult += `<div id="drawstat${column}-${index}" class="row text-uppercase fw-bold border border-1 border-success">`;
htmlResult += createInfoStat(result);
htmlResult += '</div>';
if (column == (maxcols-1)) {
const rowadsbox = itemresult.length / resultAdsbox.length;
if (Math.floor(index % rowadsbox) === Math.floor(rowadsbox - 1)) {
const adsboxbanner = resultAdsbox[numAdsbox];
htmlResult += '<div class="row border border-1 border-success py-3">';
htmlResult += `<img src="${adsboxbanner.ads_image}" alt="${adsboxbanner.ads_name}" class="col-12 m-0 p-0">`;
htmlResult += '<div class="d-flex flex-nowrap justify-content-between mt-2">';
htmlResult += `<a class="btn btn-warning" href="${adsboxbanner.ads_login}" target="_blank" rel="noopener noreferer" role="button">Login - Daftar</a>`;
htmlResult += `<a class="btn btn-warning" href="${adsboxbanner.ads_chat}" target="_blank" rel="noopener noreferer" role="button">Live Chat</a>`;
htmlResult += '</div>';
htmlResult += '<div class="captionbox fs-6 mt-2 pe-3">';
htmlResult += '<div class="text-center border border-warning py-1 lh-1 text-uppercase fw-bold">';
htmlResult += '<small class="d-block text-warning blinker">Situs Bandar Togel</small>';
htmlResult += '<small class="d-block text-white blinker">Terpercaya</small>';
htmlResult += '</div>';
htmlResult += '<div class="text-center border border-2 border-warning py-2 lh-1 text-uppercase fw-bold">';
htmlResult += '<span class="blinker">No.1</span>';
htmlResult += '</div>';
htmlResult += '</div>';
htmlResult += '</div>';
numAdsbox++;
}
}
if (adsbanners.length > 0) {
const row = itemresult.length / adsbanners.length;
if (Math.floor(index % row) === Math.floor(row - 1)) {
const banner = adsbanners[numBanner];
htmlResult += '<div class="row border border-1 border-success">';
htmlResult += `<a href="${banner.ads_linkurl}" target="_blank" rel="noopener noreferer" class="m-0 p-0"><img src="${banner.ads_image}" alt="${banner.ads_name}" class="col-12 m-0 p-0"></a>`;
htmlResult += '</div>';
numBanner++;
}
}
numIndex++;
});
htmlResult += '</div>';
});
document.getElementById('itemcontent').innerHTML = htmlResult;
isUpdateResult = true;
} else {
itemresults.forEach((itemresult, index, arr) => {
var column = index;
itemresult.forEach((result, index, arr) => {
var htmlUpdate = document.getElementById(`drawstat${column}-${index}`);
if (typeof htmlUpdate != 'undefined') {
htmlResult = createInfoStat(result);
htmlUpdate.innerHTML = htmlResult;
}
});
});
}
};
req.send(null);
setTimeout(fetchResult, interval);
}
fetchResult();
</script>
</body>
</html>