要做的东西是实现这个这样的功能,把鼠标移动到某个条目上,然后弹出一个层显示出这个条目的图片,图片可以修改。
在弹出的那个div用<img />来实现,图片在tomcat启动时已经生成在一个文件目录下了,
修改了图片后是用的struts,redirect到原来的页面,问题是仍不显示修改后的图片!还是原来的图片,没有变化。
引用图片的js代码:
$("imagePreview").src = imagesrc+"?tempid="+Math.round(Math.random()*100);
然后google(发现用chrome,或者修改IE设置为每次检查后,修改了图片能够立即变化,但是以客户为中心)
然后在head里加了mete的那三行禁止缓存的语句,没有用,还用了innerHTML把整个img换掉,也给img后面的src加了一个tempid,最后出现的问题是,修改了图片后,有时候显示修改后的图片,再移开又移上去又有可能显示原来的老图片,
到底有没有什么好的办法呢?
在弹出的那个div用<img />来实现,图片在tomcat启动时已经生成在一个文件目录下了,
修改了图片后是用的struts,redirect到原来的页面,问题是仍不显示修改后的图片!还是原来的图片,没有变化。
引用图片的js代码:
$("imagePreview").src = imagesrc+"?tempid="+Math.round(Math.random()*100);
然后google(发现用chrome,或者修改IE设置为每次检查后,修改了图片能够立即变化,但是以客户为中心)
然后在head里加了mete的那三行禁止缓存的语句,没有用,还用了innerHTML把整个img换掉,也给img后面的src加了一个tempid,最后出现的问题是,修改了图片后,有时候显示修改后的图片,再移开又移上去又有可能显示原来的老图片,
到底有没有什么好的办法呢?
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
</HEAD>
<head>
<%
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires",0);
%>
<title>设置页面</title>
<link href="main.css" rel="stylesheet" type="text/css">
<script language="javascript" src="../js/splitpage.js"></script>
</head>
工具--internate选项--设置--每次访问此页时
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires",0);这样设置只是设置JSP页面不缓存,并不是设置图片不缓存.
虽然我不明白为什么
$("imagePreview").src = imagesrc+"?tempid="+Math.round(Math.random()*100);
这个不行,但是至少问题解决了,看到template Internet files文件夹下的那么多图片的名字,我想是不是可以改成用一个计数来代替random,
因为你使用Math.round(Math.random()*100)很容易得到重复的数据,所以有时行有时不行,Math.random()得到重复数据的概率很低