我正在创建一个ajax滑块来显示图像。它工作得很好,但问题是图像缓存。当图像发生变化时,因为这是一个ajax加载,这里没有缓存,图像会延迟显示。我怎样才能毫不拖延地显示图像?这是我的代码:
JS:
$(document).ready(function(){
var auto = setInterval(function(){
$("#test").load("ajax.php", {count : count}, function(){
count = count + 1;
if (count == 5) {
count = 0;
}
}).fadeOut(100).fadeIn(100);
},3000);
ajax.php中的PHP:
<?php
$pathArray = array( "<img src='pic/85.jpg' width='128' height='169'>",
"<img src='pic/18.jpg' width='128' height='169'>",
"<img src='pic/7.jpg' width='128' height='169'>",
"<img src='pic/004.jpg' width='128' height='169'>",
"<img src='pic/26.jpg' width='128' height='169'>"
);
if (isset($_POST["count"])) {
echo $pathArray[intval($_POST["count"])];
}
?>
答案 0 :(得分:0)
除非您另有指定,否则浏览器应自动缓存图像路径,无论文本来自何处,无论是硬编码,java脚本ajax还是其他任何内容。
如果一切都很慢,那似乎就是你的网络......
您可以随时创建一个javascript数组,并在使用该计数之前调用该图像的路径。
if (typeof images[count] != 'undefined') {
// call ajax and save the path here,
} else {
// display image
}