50 lines
1.5 KiB
JavaScript
50 lines
1.5 KiB
JavaScript
jQuery(document).ready(function () {
|
|
var cameraImages = [];
|
|
var cameraPointer = 0;
|
|
|
|
function preloadImages() {
|
|
$("#imagePreloader").empty();
|
|
jQuery.each(cameraImages, function(idx, cameraImage){
|
|
console.log(cameraImage);
|
|
var img = new Image();
|
|
img.src = cameraImageBaseUrl + cameraImage.camera + '/' + cameraImage.imageName;
|
|
document.getElementById("imagePreloader").appendChild(img);
|
|
});
|
|
}
|
|
|
|
function changeImage(pointer) {
|
|
$('#cameraImage').css(
|
|
'background-image',
|
|
'url(' + cameraImageBaseUrl + cameraImages[pointer].camera + '/' + cameraImages[pointer].imageName + ')'
|
|
);
|
|
$('#cameraText').text(cameraImages[pointer].text);
|
|
}
|
|
|
|
function refreshCameraImages() {
|
|
jQuery.get(cameraImageApiUrl, function (data) {
|
|
cameraImages = data;
|
|
preloadImages();
|
|
}).always(function () {
|
|
window.setTimeout(refreshCameraImages, refreshInterval);
|
|
});
|
|
}
|
|
|
|
// initial image load
|
|
jQuery.get(cameraImageApiUrl, function (data) {
|
|
cameraImages = data;
|
|
preloadImages();
|
|
|
|
changeImage(0);
|
|
window.setTimeout(refreshCameraImages, refreshInterval);
|
|
|
|
// change displayed image
|
|
window.setInterval(function () {
|
|
cameraPointer = cameraPointer >= cameraImages.length - 1
|
|
? 0
|
|
: cameraPointer + 1;
|
|
changeImage(cameraPointer);
|
|
}, changeDelay);
|
|
});
|
|
|
|
});
|