2012-02-09 4 views
2

이미지를 생성하는 PHP 파일 (이미지에 워터 마크 삽입)은 image.php라는 ID와 http://localhost/image.php?id=1을 생성합니다.미리로드하기 PHP 동적 이미지

누구든지 javascript/jQuery를 사용하여 이미지를 미리로드하는 방법을 알고 있습니까?

이미지 미리로드의 일반적인 제안을 시도했지만 작동하지 않는 것 같습니다. 나는 파일의 이름이 항상 동일하기 때문에 그것을 생각하고있다.

업데이트 : 이미지를 미리로드 this 접근 방식을 사용하고

(IMG 요소를 생성하는 간단한 JQuery와 기능)

는 한 가지주의 (아마 중요한 것은 그래서 나는 그것을 언급해야 앞면) 그 CSS를 통해 배경으로 이미지를 사용하고 있습니다.

이미지가 파이어 버그에서 가져 오는 것을 확인했습니다. 하지만 div의 배경으로 정의하려고하면 다시 가져옵니다. 실제 요소를 재사용 할 수는 없지만 브라우저 캐싱이 다시 가져 오지 않아야한다는 인상하에 있습니다.

+0

당신이 "제대로 작동 해달라고"시도 무엇 매우 도움이 평가되지 않습니다 문제. –

+0

죄송합니다. 이제 약간의 정보가 누락되었다는 것을 깨달았습니다. 나는 그것을 새롭게 할 것이다. –

답변

2

이 이미지와 함께 적절한 헤더를 보내는 것만 큼 간단해야 http://www.php.net/manual/en/function.header.php#93377

// seconds, minutes, hours, days 
$expires = 60*60*24*14; 
header("Pragma: public"); 
header("Cache-Control: maxage=".$expires); 
header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$expires) . ' GMT'); 
-1

당신이 이미지의 src 같은 PHP 파일의 URL을 사용하고 어떤 통찰력에 다시

감사합니다? 문제가 이름이 항상 동일하기 때문에 더미 버전 변수를 추가하면 캐싱이 방지됩니다. 이 자바 스크립트를 필요로하기 때문에 단순히 src

"&v=" + "(new Date()).getTime()" 

에 추가 만 페이지가로드 한 후이 작업을 수행 할 수 있습니다. 또는 백엔드 PHP 스크립트에서 페이지를 렌더링하는 경우 페이지를 제공하기 전에 임의의 버전 번호를 삽입 할 수 있습니다.

에서 :

+0

질문을 업데이트했습니다. 하지만 CSS로 이미지를 사용하고 있으며 이미 이미지 ID라는 차별화 된 변수가 있습니다. –

+1

그는 실제로 ** 캐싱을 원합니다 **. 문제는 현재 캐싱이 일어나지 않는다는 것입니다. – Brad