2013-08-01 46 views
1

問題出現在標題中。它曾經在奇怪的場合做過。然後我添加了jQuery rotate.js插件來旋轉我的標題360度,現在它不斷地放在它應該在的位置。這可能是有趣的是,我得到了抵消畫布與Javascript,CSS,jQuery - 我的畫布移動到它不應該在的位置

var rect = gameController.canvas.getBoundingClientRect(); 
var offset = { 
    x: rect.left, 
    y: rect.top 
}; 

而且仍然有0,0座標在哪裏它應該是(這是正確的左上角,它應該如何當畫布沒有移動時)。

#canvas { 
    z-index: 1; 
    position: absolute; 
    margin-top: 52px; 
    margin-left: 44px; 
    background-image:url(images/background.jpg); 
} 

如果位置是絕對位置,則它將從文檔中移除,並且不會移動它。奇怪。

+0

有必要看到所有的代碼,包括html。你可以把它發佈到jsfiddle或pastebin嗎? – Ringo

+0

http://jsfiddle.net/F9cYv/這是一個開始。我不知道如何使用jsfiddle那麼好 – user2602079

回答

1

getBoundingClientRect()返回畫布及其CSS邊框的總和。

也許用getClientRects()檢查畫布,看看它到底在哪裏。

+0

這太奇怪了,但我嘗試了像alert這樣的提示(gameController.canvas.getClientRects());'並且它沒有提示位置,它表示對象客戶端矩形列表,但它解決了問題,只是提醒一些問題解決了問題:-S(不是我想要在頁面加載時發出警報) – user2602079

+0

這是關於什麼時候加載的東西,因爲我嘗試使用window.onload與我的所有腳本所以我可以把它們放在頭上,發生同樣的事情(畫布移動到右側)。在畫布加載之前提醒一些事情可以幫助它正確設置,這樣可以讓更多時間加載其他內容 – user2602079

0

我不知道它爲什麼會移動,我可能有一個css錯誤的地方..但我有我的畫布作爲絕對的位置,相對於它內部的div。我把我的畫布放在body標籤的頂部,所以它相對於整個頁面是絕對的,然後用top和bottom改變它的位置以使它正確。現在沒有什麼會移動它。它可以與rotate.js插件一起使用。感謝您看看我的問題。

相關問題