2013-04-19 2 views
1

창 크기 당 DIV의 높이를 설정해야하지만 $(window).height()은 IE10에서 0을 반환합니다. IE8과 IE9에서는 정상적으로 작동합니다. 왜?

또한 내가 작성한 문서 타입 문 내가 "<!--[if IE]>"다음 잘 작동 "<![endif]-->"를 제거하면

<!--[if IE]> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">` 
<![endif]--> 

을 다음과 같이. 왜? 설명 해주십시오.

+6

DOCTYPE은 무엇입니까? –

+3

jQuery의 $ (window) .height()는 doctype에 민감합니다. 너 뭐야? –

+1

+1 위의 의견에. 또한 jQuery의 어떤 버전을 사용하고 있습니까? – Spudley

답변

1

Irvin Dominin이 말했듯이 jQuery의 $ (window) .height()는 doctype에 민감합니다. Internet Explorer 10 조건부 주석은 지원되지 않으므로 브라우저가 IE가 아닌 경우 Doctype이 없습니다. jQuery의 $ (window) .height()가 중단됩니다.

+0

IE 용뿐만 아니라 모든 브라우저에서 Doctype을 제공 할 생각입니다. 따라서 조건부 주석을 제거하십시오. :-) –

+2

좋은 생각, 당신은 항상 doctype이 있어야합니다. –

1

"<!--[if IE]>" and "<![endif]-->"을 제거하면 작동하지만/IE의 경우 IE에서 다른 브라우저는 $(window).height()이 정상적으로 작동하지 않으므로 DOCTYPE을 감지 할 수 없습니다. doctype이 정의되지 않은 경우. 그래서 모든 브라우저에 대해 DOCTYPE을 추가하십시오. 문제가 해결 될 수 있습니다.

+1

예, 확실히 모든 브라우저에 doctype을 추가했습니다. 지금 일하고있어 ... –

관련 문제