如果你想要背景,這是一個跟進問題How can I stop an IFrame reloading when I change it's position in the DOM?。如何將絕對定位的元素直接放在內聯元素的位置上?
我有一個內聯div <div id="leaderboard-slot"></div>
(具有固定的寬度和高度)和另一個div(「leaderboard-loader」)在該頁面的下一個div的實際內容。
由於各種原因(請參閱上一個線程),我無法簡單地執行appendChild或類似操作。
相反,我希望定位排行榜裝載程序,使它佔據排行榜插槽「保留」的空間。我已經使用了一些jQuery方法來做到這一點:
var loader = $('leaderboard-loader');
var dest = $('leaderboard-slot');
var pos = dest.getPosition();
loader.setStyle('top', pos.y + 'px');
loader.setStyle('left', pos.x + 'px');
我在文檔加載和調整大小。但是,如果頁面內的其他元素導致迴流,則目標div將移動,但加載器不會。
是否有這樣做的安全方式 - 當我對頁面沒有其他任何知識時它需要工作(即,我不能僅僅對其他任何可能導致迴流的方法進行調用,因爲我沒有知道這些是什麼)。
任何幫助,將不勝感激 - 謝謝:)
感謝佩卡。不幸的是,排行榜加載器必須出現在文檔的底部(它加載了一堆使用document.write的外部腳本) - 這個想法是在排行榜加載器之前允許整個頁面加載。 – 2010-02-09 23:51:00
啊,我明白了。我重讀了「進一步下一頁」。 – 2010-02-09 23:53:22