2013-01-24 54 views
1

我創建了一個幻燈片插件,它可以獲取圖像列表並構建幻燈片放映。幻燈片放映位置距頂部+ $(文檔).scrollTop()100px。在頁面上使用css縮放時使用javascript定位元素

這很簡單,效果很好。當有人在頁面上使用css縮放時,我遇到了一些問題。由於變焦,頂部位置的計算將關閉。有沒有人知道糾正這個問題/解決問題的好方法?

在此先感謝!

+1

可能重複[JQuery的可拖動與縮放問題](http://stackoverflow.com/questions/2930092/jquery-draggable-with-zoom-problem) –

+0

謝謝。這可能有幫助。如果有人對我的特殊問題提出意見,那就太好了。 –

+1

「css zoom」是什麼意思?爲什麼你的計算需要考慮這一點,如果它只是從頂部放置100px元素? – Bergi

回答

5

我有同樣的問題,並發現jQuery .offset()。top返回一些取決於窗口滾動位置的值,如果有CSS縮放添加到元素,我們需要獲取位置的元素。

所以,我用的是原生的JavaScript .offsetTop在這種情況下:

$("#scrollDestination").get(i).offsetTop;

但是,請記住,這會得到相對的位置到它的父,而不是像jQuery .scrollTop()這是返回滾動酒吧位置。所以你需要做一些計算,但是至少你會得到元素位置一致的返回值,當你有CSS縮放時。

+1

我非常欣賞這一點。很困惑,爲什麼我的android給了element.position不同的值。發現這一點:「頁面被用戶放大時尺寸可能不正確;瀏覽器不公開API來檢測這種情況。」 https://api.jquery.com/position/然後找到你的帖子。 – kris