2016-08-09 7 views
0

오브젝트가 화면에서 임의로 움직이는 프로젝트 작업. 나는이 객체들로 덮히지 않는 맨 위에 요소를 갖기 위해 노력하고 있습니다. 이건 내 현재 코드입니다 : 이것은 잘 작동맞춤 창 높이를 설정하는 방법은 무엇입니까?

function makeNewPosition(){ 

    // Get viewport dimensions 
    var h = $(window).height() - 150; 
    var w = $(window).width() - 100; 

    var nh = Math.floor(Math.random() * h); 
    var nw = Math.floor(Math.random() * w); 

    return [nh,nw];  

} 

하지만 차단할 필요가있어, 개체가 갈 수 없어 화면 상단에 150 픽셀을 말할 수 있습니다. 웬일인지 나는 이것을 할 수 없었다. 이 작업을 수행하기 위해 코드를 어떻게 수정합니까?

도움 주셔서 감사합니다.

+0

을 시작하는 것입니다 상관없이 임의의 숫자가 생성되는 것을, 당신의 임의 높이 그런 식으로 150을 추가하지 필요 너의 임의의 새로운 높이에 가치? ...? – CBroe

답변

1

위로부터 오프셋으로 150px을 설정해야합니다. 그렇지 않으면 화면의 bottom 150px에 top이 아닌 객체가 변경되지 않습니다. 당신이 100px의 왼쪽과 오른쪽 영역도 그대로 할 수 있도록하려는 경우

function makeNewPosition() { 
    var h = $(window).height() - 150; 
    var w = $(window).width() - 100; 

    var nh = Math.floor(Math.random() * h) + 150; 
    var nw = Math.floor(Math.random() * w); 

    return [nh,nw];  
} 

, 당신은 200px을 빼지하고 그 결과에 100px를 추가해야합니다.

function makeNewPosition() { 
    var h = $(window).height() - 150; 
    var w = $(window).width() - 200; 

    var nh = Math.floor(Math.random() * h) + 150; 
    var nw = Math.floor(Math.random() * w) + 100; 

    return [nh,nw];  
} 
+0

도움 주셔서 감사합니다 @eisbehr! – AndrewLeonardi

+0

안녕하세요. @ AndrewLeonardi! – eisbehr

1

당신은 그냥 기본으로하는 150 픽셀을 추가하려면 nh 적어도 150

var nh = Math.floor(Math.random() * h) + 150; 
관련 문제