2012-10-19 83 views
0

在我的代碼中,我試圖比較高度和元素的位置,以確保元素不離開遊戲的div。解析若干像素爲一個整數

首先我得到了我的元素蛇的位置。如果光標太靠近,我就移動它。最後,我會檢查它是否距離頂部和底部至少20個像素。出於某種原因,一切都只是工作,當它到達屏幕的底部(這是否則,如果在程序結束塊語句)

var posL = $("#snake").position().left; 
var posT = $("#snake").position().top; 
if((e.pageX-200 < posL) && (posL < e.pageX-50)){ 
    if(posL > 20){ 
    posL = posL - 5; 
    }else{ 
    posT = posT + 5; 
    } 

...

if(posT < 20){ 
    posT = 20; 
}else if(posT > parseInt($("#game").height)){ 
    posT = parseInt($("#game").height) - 20; 
} 
+0

究竟是什麼「不工作」?如果您嘗試在#game的最底部檢測碰撞,則需要將#snake高度添加到posT。 –

+0

我的形象足夠小,所以我不介意稍微關閉,我的問題是,如果其他語句不停止它 –

回答

2

你忘了().height ...兩次! ;-)

if(posT < 20) { 
    posT = 20; // ------------------------v 
} else if(posT > parseInt($("#game").height)){ 
    posT = parseInt($("#game").height) - 20; 
}    // -----------------^ 
+0

這個作品!非常感謝(將在3分鐘內接受) –