我有一個是(通過JQuery的append()
)進口從JSON和生成數據的應用程序的一些HTML列表的代表數據:JQuery的 - 功能上JSON不起作用導入的數據
<ol id="iran">
<li class="y1900"><p>Iran 1900 Revolution flag</p></li>
<li class="y1906"><p>Iran 1906 Dictator flag</p></li>
<li class="y1921"><p>Iran 1921 Revolution flag</p></li>
</ol>
我有一個函數resizeFlags()
(純粹用於UI)計算每個列表項的寬度並調整大小以適合所有內容到一個屏幕中。
resizeFlags()
函數在$(document).ready()
(JSON加載之後)期間調用,並且對我的測試(靜態)html文件正常工作,但在測試html被刪除並且使用JSON數據附加相同的html時不起作用 - 附加列表正確輸入DOM,但不會發生調整大小。
我有一個resizeFlags()
的手動觸發器(用於基於新的一年範圍進行重新計算),並且按照預期在附加數據上工作。
我覺得這很明顯,我忽略了 - 我錯過了什麼?
編輯:
下面是附加數據的代碼(我暫時搬到resizeFlags()
到這個功能,通常這就是所謂的後直:
function loadFlags() {
$.getJSON('data/flags.json',function(countriesdata){
//for each flag
$.each(countriesdata.countries,function(i,countries){
$('#countries').append('<li id="'+countries.country+'">'+countries.country+'</li>')
$('#flags').append('<ol id="'+countries.country+'"></ol>')
$.each(countries.years,function(i,flagyears){
$('#flags #'+countries.country).append('<li class="y'+flagyears.year+' '+flagyears.taxonomy+'"><p>'+flagyears.flagname+'</p></li>')
});
});
});
//resize from defaults
resizeFlags(totalYears);
}
請發送jQuery代碼請 – 2011-05-01 12:24:47
郵政編碼請。 – 2011-05-01 12:25:13
你是如何下載JSON的?你的文件只有JSON?例如$(document).ready()在ajax調用之後不會啓動。 – regilero 2011-05-01 12:27:54