[問題] 抓取div高度
┌───┬────────┐
│ a │ │ div的切割方式如圖以及下方所示
├───┤ │
│ │ │ e(d(a,b),c)
│ │ c │
│ b │ │ 使用d將ab區塊包住
│ │ │
│ │ │ 然後還有一個e將dc包住
└───┴────────┘
a的高度為固定 bc隨內容改變高度 de高度也皆為auto
平常整個e為隱藏狀態 當觸發事件時會先將整個e顯示出來 把資料分別填入abc中
然後使用document.getElementById('DIVid').clientHeight; 取得abc的高度
將a+b與c比較
如果a+b>c的話將c的高度使用c.style.height = temp;//temp=a+b 將高度調整成一樣
程式碼如下
google.maps.event.addListener(marker, 'click', function() {
calcRoute(marker);//路徑規劃
$.get(txtLimk,function(txtData){
output(txtData,videoLink);
})
choiceheight();
});
function choiceheight(){
var aheight = document.getElementById('a').clientHeight;
var bheight = document.getElementById('b').clientHeight;
var cheight = document.getElementById('c').clientHeight;
var temp = parseInt(aheight)+parseInt(bheight);
if( temp > parseInt(cheight)){
cheight.style.height = temp;
}
//有在這裡加上alert檢查過 b的值還是錯誤的
}
其實抓取a跟c的高度是沒有問題的
問題在於b b的內容是放置google map的路徑規劃文字資料
就我的理解來看
我的程式碼是否應該是先執行完//路徑規劃 這一行將資料填入b
才會執行下方的$.get將另外兩筆資料填入ac
然後才會執行抓取高度的function調整高度
但是就alert檢查的結果來說 b的文字資料好像是所有程式碼執行完之後才會填入
所以無法取得b填入資料後的高度
想請問的是 google的路徑規劃資料是否真的是在所有動作完成後才會填入
如果是這樣有什麼方法可以延後抓取高度的時間嗎QQ?
麻煩各位大大了<(_ _)>
--
▄▄▄▄▄ ▄▄▄▄▄▄ ▄ ▄
▄ ▄▄▄▄ ▄
▄▄▄ ▄
▄ ▄ ▄▄▄▄▄▄▄▄ ▄
▄▄ ▄▄▄ ▄▄▄▄ ▄
▄ ▄ ▄▄▄ くっくっくっ....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.109.100.195
※ 編輯: timmy852111 來自: 120.109.100.195 (10/25 21:11)
推
10/25 21:31, , 1F
10/25 21:31, 1F
→
10/25 22:10, , 2F
10/25 22:10, 2F
→
10/26 14:40, , 3F
10/26 14:40, 3F
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章