2012-02-04 3 views
1

내 창 크기에 맞게 배경 이미지의 크기를 조정하는 데 사용하는 자바 스크립트가 있습니다. 내가 얻지 못하는 혼란스러운 일들이 있습니다.

  1. 본문 블록 아래에 배치하지 않으면 방화범이 끌리고 내 페이지가 내 resizeFrame 기능을 인식하지 못한다고 가정합니다. 왜?

  2. 왜 오류가 발생합니까? $(window).height is not a function?

어떤 제안이나 통찰력이 도움이 될 것입니다.

<!-- This this placed in <head> block --> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script> 

<script> <!-- This placed below body block --> 
    jQuery.event.add(window, "load", resizeFrame); 
    jQuery.event.add(window, "resize", resizeFrame); 

    function resizeFrame() 
    { 
     var h = $(window).height(); 
     var w = $(window).width(); 
     $('body').css('background-size', w + 'px ' + h + 'px'); 
    } 
</script> 
+0

나는 그것이 오류를 가지고 있기 때문에 그것을 인식하지 추측 것 가지고 왜

var h = $(window).height();

있어요. 먼저 수정하십시오. – Jivings

+1

왜'$ (window) .on ('load', resizeFrame); 대신에 jQuery.event.add를 직접 사용하고 있습니까? – loganfsmyth

+0

'resizeFrame '은 정의되기 전에 어떻게 참조 할 수 있습니까? – ori

답변

3

답변이 있습니다. window.height은 기능이 아닙니다.

값을 얻으려면 $(window).height()window.screen.height으로 변경하고 싶습니다.

너비와 동일합니다.

+0

'height'는 jquery 함수이고, 네이티브 윈도우는' 높이',하지만'innerHeight','outerHeight' – ori

+0

아, 죄송합니다. 수정 된 대답은'window.screen.height'이어야합니다. – Jivings

+0

하지만'$ (window) .height()'가 작동해야합니다. 따라서 응답으로 문제가 해결 되더라도 문제는 해결되지 않습니다. 나는 -1을 제거 할 것이다 :-) – ori

1

만약 당신이 WordPress에서 개발한다면 $() 대신 jquery()를 사용해야합니다. 코드에서는

jQuery.event.add(window, "resize", resizeFrame);

와 실수

관련 문제