У меня есть файл 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, я'VE поместил содержимое за пределы <body>
, если я добавлю его, в Chrome такой ошибки не будет.
Я также обновил свою программу, удалил объявление DTD, после этого такая ошибка исчезлаа также.
ТАК Я думаю, что я не должен использовать строгий DTD, потому что иногда это трудно понять :(