【问题标题】:Why captcha image does not change in IE8为什么验证码图像在 IE8 中没有变化
【发布时间】:2013-01-10 22:59:54
【问题描述】:

我面临一个重大问题。当我在单击链接“不可读?更改文本”时更改验证码的图像时。那么在这种情况下,只有 IE8 不改变图像,而其他浏览器支持它。如果有人知道它的原因,请告诉我。我的编码如下。 谢谢

<div id="captcha1">
    <img src="captcha.php" id="captcha" />
        <br/>
            <a href="#" onclick="
    document.getElementById('captcha').src='captcha.php?'+Math.random();
    document.getElementById('captcha-form').focus();"
    id="change-image">Not readable? Change text.</a>
</div>

【问题讨论】:

    标签: internet-explorer-8 captcha


    【解决方案1】:

    好的,通过以下方式更改您的 Cache-Control 标头:

    header('Cache-Control: no-cache, no-store, must-revalidate, post-check=0, pre-check=0');
    

    根据我的阅读,后检查和预检查是特定于 IE 的。

    查看更多文档。关于这个话题:

    http://php.net/manual/en/function.session-cache-limiter.php

    关于它的工作方式:

    举个例子怎么样?假设 HTTP 服务器发送一个图像,其中包含 以下标头: Cache-Control: post-check=3600,pre-check=43200 Both pre-check 和 post-check 以秒为单位指定时间间隔。我们告诉IE 将上述图像缓存 12 小时(60 * 60 * 12 秒)。这 第一个小时(60 * 60 秒) IE 将简单地从它的 本地缓存。但是,在 60 分钟后,我们希望它检查更新的 一个在后台,即它将显示缓存的一个,然后执行 背景调查。 12 小时后,IE 会检查是否有修改过的 先上图。

    SOURCE

    注意:在测试之前从浏览器中清除缓存;)。

    【讨论】:

      【解决方案2】:

      我怀疑是 IE8 缓存问题;那是您的 Math.random() 无法正常工作。 看看那里:IE8 is still caching my requests even with mathrandom

      【讨论】:

      • Hii Melvin.. 感谢您的建议,但仍有一些错误。 B'因为我在标头中使用以下代码来删除缓存问题。仍然无法正常工作。如果你知道,请告诉我
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-17
      • 1970-01-01
      相关资源
      最近更新 更多