簡體   English   中英

無法為網絡攝像頭緩存圖像的javascript幻燈片

[英]javascript slideshow that doesn't cache images for webcam

我的網絡攝像頭每10秒鍾將一個圖像上傳到我的網站並將其命名為live.jpg ...我正在尋找一種每10秒鍾刷新一次圖像(以顯示最新圖像)的方法,但是該圖像已被緩存且未更新。 這是我正在使用的舊javascript,它無法正常工作。...是否可以對它進行簡單的修改以解決緩存圖像的問題? 非常感謝您的任何建議:

<script type="text/javascript">
// (C) 2000 www.CodeLifter.com
// http://www.codelifter.com
// Free for all users, but leave in this  header
// NS4-6,IE4-6
// Fade effect only in IE; degrades gracefully

// =======================================
// set the following variables
// =======================================

// Set slideShowSpeed (milliseconds)
var slideShowSpeed = 10000

// Duration of crossfade (seconds)
var crossFadeDuration = 1

// Specify the image files
var Pic = new Array() // don't touch this
// to add more images, just continue
// the pattern, adding to the array below

Pic[0] = 'http://www.examplesite.com/live.jpg'

// =======================================
// do not edit anything below this line
// =======================================

var t
var j = 0
var p = Pic.length

var preLoad = new Array()
for (i = 0; i < p; i++){
   preLoad[i] = new Image()
   preLoad[i].src = Pic[i]
}

function runSlideShow(){
   if (document.all){
      document.images.SlideShow.style.filter="blendTrans(duration=2)"
      document.images.SlideShow.style.filter="blendTrans(duration=crossFadeDuration)"
      document.images.SlideShow.filters.blendTrans.Apply()
   }
   document.images.SlideShow.src = preLoad[j].src
   if (document.all){
      document.images.SlideShow.filters.blendTrans.Play()
   }
   j = j + 1
   if (j > (p-1)) j=0
   t = setTimeout('runSlideShow()', slideShowSpeed)
}
</script>

在圖片網址中添加一個變化的參數,例如時間戳記:

document.images.SlideShow.src = preLoad[j].src+'?'+new Date().getTime();

我認為您應該使用時間戳在preLoad中緩存圖像,而不是將時間戳添加到Slideshow的源中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM