我有一个生成图像动态内容的PHP文件(Captcha Image)
需要在客户端加载和重新加载图像。
这是主页面(test.html):
<html>
<head>
<title>test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script>
function reload_image(){
$('#img').attr('src','img.php?'+Math.random());
}
</script>
</head>
<body>
</body>
<img id="img" /><a href="javascript:reload_image();">Reload</a>
</html>
和PHP文件(img.php):
<?php
header("Content-type: image/jpeg");
readfile('php.png');
每次点击“重新载入”链接时,apache访问日志中都有两个日志,但Chrome网络监视器中只有一个日志,这里是日志:
127.0.0.1 - - [20/Feb/2011:15:38:59 +0800] "GET /img.php?0.8672932190820575 HTTP/1.1" 200 249
127.0.0.1 - - [20/Feb/2011:15:38:59 +0800] "GET /img.php?0.8672932190820575 HTTP/1.1" 200 249
127.0.0.1 - - [20/Feb/2011:15:39:13 +0800] "GET /img.php?0.4399074970278889 HTTP/1.1" 200 249
127.0.0.1 - - [20/Feb/2011:15:39:14 +0800] "GET /img.php?0.4399074970278889 HTTP/1.1" 200 249
这些脚本在Firefox中运行良好,是Chrome的错误吗?我该如何解决?
非常感谢!
修改
似乎是HTML结构错误的问题,我把内容放在<body>
之外,如果我加入它,Chrome中就不会有这样的错误。
我还更新了我的程序,删除了DTD声明,之后,这样的错误也消失了。
所以我想我不应该使用严格的DTD,因为有时很难弄明白:(