我想構建一個8 div的響應式設計。我需要這些div具有絕對定位的內聯CSS樣式,包含左側和頂部位置。爲了保持它的響應,我不能用CSS定位它們。將對象的位置設置爲內聯樣式?
我想等到div加載,然後使用jQuery獲取這些div的位置,然後將這些信息傳遞迴它們各自的內聯樣式。
如果我使用文檔準備,它適用左:0,右:0我所有的div。如果我使用文檔加載它根本不激發代碼。
$(document).ready(function(){
$("div.item").each(function(i, obj) {
var posfix = $(this).position();
var getW = $(this).width();
var getH = $(this).height();
$(this).children().text("left: " + posfix.left + ", top: " + posfix.top);//test
$(this).children().append("height: " + getH + ", width: " + getW);//test
$(this).css({position: 'absolute',left:posfix.left,top:posfix.top,width:getW,height:getH});//set
});
});
這裏jsFiddle
嘗試在給每個div的唯一id的幫助下,你可以很容易地指定css,在你的情況下,每個div都有相同的類名 –
你在哪裏計算新的位置?正如我所看到的div從0px開始(默認),你重新分配相同的值。 – Mangiucugna
@Vaibhav Jain - 我基本上一遍又一遍地重複同一個動作, h是爲什麼即時消息使用單個類名重複,而不必爲每個單獨的ID編寫代碼。 – Rydog147