Javascript jQuery+;Fancybox HREF参数未刷新/缓存
我在做什么:试图从iFrame调用Fancybox以附加到父对象而不是iFrame,同时解析url以与Fancybox'href'参数一起使用 问题:这是用于用户图像上传表单的,第一次上传会产生想要的结果;带有图像的fancybox弹出窗口。随后的尝试会导致Fancybox链接到第一个图像,就好像它正在缓存它一样。当每次上传都覆盖最后一个图像时,url实际上从未改变,但图像确实改变了Javascript jQuery+;Fancybox HREF参数未刷新/缓存,javascript,jquery,image,parameters,fancybox,Javascript,Jquery,Image,Parameters,Fancybox,我在做什么:试图从iFrame调用Fancybox以附加到父对象而不是iFrame,同时解析url以与Fancybox'href'参数一起使用 问题:这是用于用户图像上传表单的,第一次上传会产生想要的结果;带有图像的fancybox弹出窗口。随后的尝试会导致Fancybox链接到第一个图像,就好像它正在缓存它一样。当每次上传都覆盖最后一个图像时,url实际上从未改变,但图像确实改变了 刷新页面将再次开始此循环。如果右键单击链接并在新窗口/选项卡中打开,您将获得新图像,然后fancybox也将更新
刷新页面将再次开始此循环。如果右键单击链接并在新窗口/选项卡中打开,您将获得新图像,然后fancybox也将更新该图像
echo "<p>" . '<a id="image-preview" href="/images/uploads/' . preg_replace("/[^A-Za-z0-9_]+/", "", $result[0]['Klarents_Model_Project']['project_name']) . '/' .
preg_replace("/[^A-Za-z0-9_]+/", "", $result[0]['Klarents_Model_Company']['company_company_name']) . '_' .
(($this->getRequest()->getParam('filename') !== "") ?
$this->getRequest()->getParam('filename') : $result[0]['Klarents_Model_Company']['company_id']) .
"." . $ext . '" onclick="event.preventDefault();parent.fbuPreview($(this).attr(\'href\'));">Image preview' . "</a></p>";`
代码:这是php在用户成功上传图像后输出的代码,希望创建指向该图像的链接
echo "<p>" . '<a id="image-preview" href="/images/uploads/' . preg_replace("/[^A-Za-z0-9_]+/", "", $result[0]['Klarents_Model_Project']['project_name']) . '/' .
preg_replace("/[^A-Za-z0-9_]+/", "", $result[0]['Klarents_Model_Company']['company_company_name']) . '_' .
(($this->getRequest()->getParam('filename') !== "") ?
$this->getRequest()->getParam('filename') : $result[0]['Klarents_Model_Company']['company_id']) .
"." . $ext . '" onclick="event.preventDefault();parent.fbuPreview($(this).attr(\'href\'));">Image preview' . "</a></p>";`
关于,您必须向图像中添加一个参数,如:
/images/uploads/something/customer/uploadedfilename.jpg?date=20120305122713
这有一个不同的URL,不会给出与前一个图像相同的结果。您不能通过Javascript清除缓存,而是添加一个参数,即时间。将强制浏览器加载新图像
当前浏览器正在缓存IMG URL。如果是相同的,他会一直从缓存中取出,直到你刷新页面
我曾经遇到过这个问题,唯一的解决方法是添加一个参数。您必须向图像添加一个参数,如:
/images/uploads/something/customer/uploadedfilename.jpg?date=20120305122713
这有一个不同的URL,不会给出与前一个图像相同的结果。您不能通过Javascript清除缓存,而是添加一个参数,即时间。将强制浏览器加载新图像
当前浏览器正在缓存IMG URL。如果是相同的,他会一直从缓存中取出,直到你刷新页面
我已经遇到这个问题好几次了,唯一的解决办法就是添加一个参数