這裏是我工作的一個樣本小提琴 - http://jsfiddle.net/cuvsc/1/jQuery的動態div的追加從PHP循環
它做什麼,它應該。它將子div附加到父div,並將子級的偏移設置爲相對於父div(不是body)。
因此,當我在父div上方添加br或p標籤時,它不會影響父級內的childs位置。
現在的問題是,當我從一個PHP數據庫調用產生的jQuery代碼時,子div的位置不再相對於父級。
這可能是從客戶端服務器端問題和什麼先執行?小提琴中的代碼是來自數據庫的代碼。
也許我的選擇器是錯的?
下面是代碼
<?
while ($row = $result->fetch_object()) {
$dbchildNumber=$row->dbChildNumber;
$cords=$row->coordTopLeft;
?>
<div id="child_<?= $dbchildNumber ?>" class="multidraggable" style="position: absolute;">
<?=$boothNumber ?>
</div>
<?php
$i++;
}
?>
父DIV和jQuery代碼用於定位
while ($row = $result->fetch_object())
{
$arrPos = explode(",", $row->coordTopLeft);
echo "$('.parent').append($('#child_" . $row->childNumber . "'));\n\n";
echo "$('#child_" . $row->childNumber . "').offset({left:" . $arrPos[0] . ",top:" . $arrPos[1] . "});\n\n";
$i++;
}
被切除,並從PHP頁面粘貼。
我找不出我缺少的東西。有任何想法嗎?也許它也會幫助其他人定位太多或php與jQuery一起使用?
你能提供來自瀏覽器而不是php的呈現html嗎? – 2012-02-01 18:46:35
正在生成的元素的html位於jfiddle中。這兩個孩子div是php的結果是