2010-06-02 15 views
2

이미지 원본을 설정하려고합니다. IE와 Firefox에서는 이미지가 올바르게 표시되지만 Chrome에는 표시되지 않습니다. 콘솔에 나타나는 오류 메시지는 "이미지로 해석되었지만 MIME 유형 text/html로 전송 된 리소스"입니다.이미지가 Chrome에 표시되지 않습니다.

ColdFusion.Window.show('loading'); 
image = <cfoutput>#randrange(1,numImages)#</cfoutput>; 
document.getElementById("loadImg").src = "./images/loading" + image + ".gif";   
setTimeout('document.images["loadImg"].src = "./images/loading" + image + ".gif"', 100); 

MIME 형식을 변경해야한다고 생각하지만이 작업을 수행하는 방법을 모릅니다. Chrome에서이 기능을 사용하려면 무엇을 변경해야합니까?

+4

나머지 페이지 (HTML 등) 또는 예제 페이지를 보여줄 수 있습니까? 콘솔에 오류 메시지가 표시됩니까 (Shift + Ctrl + J)? –

+0

경로에서 점없이 시도해 보셨습니까? –

+0

오류 메시지가 있습니다. 위의 편집을 참조하십시오. – dmr

답변

2

글쎄, 오류 메시지는 문제를 정확하게 설명합니다. 분명히 다른 브라우저는 잘못된 MIME 형식으로 제공되는 이미지에 별다른 문제가 없지만 Chrome은이 형식이 마음에 들지 않습니다.

거의 확실하게 서버 측 오류입니다. PHP 스크립트 사용과 같이 원하는 이미지가 동적으로 생성됩니까?

1

이미지 URL이 404 페이지를 반환하기 때문에 text/html mime 유형을 추측하고 있습니다. 경로에 점이 없으면 시도해보십시오.

document.getElementById("loadImg").src = "images/loading" + image + ".gif"; 
+1

Chrome에서 오류가 발생할 수 있습니까? –

+1

음, 크롬이 URL을 http://foo.com/.imim/loading1.gif와 같이 해석하고 있으며 웹 서버가 404 페이지를 반환하고 있다고 생각합니다. 되돌아 오는 HTML이 이미지 데이터가 아니기 때문에 Chrome은 오류를 발생시킵니다. –

+2

하지만 모든 웹 서버 (또는 Chrome 자체)는 해당 URL을 foo.com/images/loading1.gif로 간단히 해결해야합니다. Chrome에서 http://stackoverflow.com/./questions를 사용하여이 기능을 테스트 한 결과 Chrome이 자동으로 URL을 올바르게 해석합니다. –

2

개발자 도구 (Ctrl-Shift-I)를 사용하여 할당 할 src 속성을 검토합니다. 해당 URL을 얻으면 실제로 이미지를 얻는 지 확인하십시오. 다른 사람들이 말했듯이 404가 나타날 수 있습니다. 의도 한대로 URL이 정확하게 형성되지 않을 수 있습니다.

2

IF 이미지가 해당 위치에 있다는 것을 알고 있으면 웹 서버의 MIME 유형이 .gif로 잘못 구성되었을 수 있습니다. text/html과 같이 image/gif가 있어야합니다.

관련 문제