2012-02-09 23 views
0

我想獲取/設置div的位置。我不知道應該使用什麼最好的技術:(編程)divs的位置,應該使用哪個屬性?

CSS樣式?

var x = aDiv.style.left; 
var y = aDiv.style.top; 

或使用HTML div元素的clientTop/clientLeft?

or ...?

謝謝你的時間! J.

+0

這樣做的目的是以固定的幀速率以編程方式移動div,我的問題的範圍是以任何可想象的方式知道哪一個是「最佳」,如跨瀏覽器,最佳實踐,性能等。 謝謝。 – Jem 2012-02-09 13:16:16

+1

是jQuery的一個選項?使用jquery將解決大部分跨瀏覽器和性能問題。 – Louis 2012-02-09 13:18:58

+1

我會用JS框架來做到這一點。例如,Mootools和jQuery擁有很好的設置/獲取div位置的方法,除了調用它們之外,您不必擔心任何事情。他們是跨瀏覽器,一個巨大的優勢。但是,如果您使用vanilla JS等待答案會更好,可能僅僅包含一個JS框架來做到這一點太多了。 – 2012-02-09 13:19:21

回答

1

clientTopclientLeft是隻讀的,所以您不能用它們設置div位置。有多種方式可以使用CSS,我建議你學習CSS positioning的基礎知識。

+0

嗨,感謝您的只讀信息。我只是想知道哪種方式最好,設置偏移或CSS樣式? – Jem 2012-02-09 13:23:01

+0

這實際上取決於您希望定位元素如何與頁面上的其他元素進行交互。如果你不想讓它們影響其他元素,你可以通過實際或絕對定位將它們從流中移出,然後像上面提到的那樣操作'style.left'和'style.top'。 – bfavaretto 2012-02-09 13:31:10

+0

聽起來不錯:)謝謝,J。 – Jem 2012-02-09 13:47:08

相關問題