我正在製作一個來自ajax的列表,該部分工作得很好。我也檢查sreenwidth並相應地改變一些我的div的寬度,但不能得到,當我使用AJAX它的工作...jquery css不會與ajax一起工作
這裏是我做的:
$(document).ready(function(){
var screenwidth = $(window).width();
swidth = screenwidth - 20;
$("#thelist li").css("width", swidth+"px");
$.getJSON('linktomyphppage.php', function(data) {
var array = [];
$.each(data, function (i, val){
array.push($("#thelist").append("<li>"+val.fname+" "+val.lname+"</li>"));
});
});
});
我的JSON的樣子這個:
[{"fname":"Peter","lname":"Hanson"},{"fname":"Michael","lname":"Bird"}]
json部分工作得很好,但它就像它根本沒有得到CSS部分。如果我這樣做,這樣它的工作原理,但我不使用JSON:
for (var i = 0; i < 2; i++) {
array.push($("#thelist").append("<li>"+val.fname+" "+val.lname+"</li>"));
}
盼望的幫助,在此先感謝:-)
我想這是因爲你在創建之前使用'#thelist li'只需改變jQuery CSS的位置並將它放在最後.. – Bhavik
你能用一個例子來構建一個JsFiddle嗎?具有swidth的console.log顯示什麼?也許你沒有從swidth得到有效的迴應?並且你也應該''var varidth'''也不認爲這是問題 – alonisser
'css()'將'style'屬性添加到元素中,所以新元素不會擁有它。只需將css部分移至json請求回調的末尾即可。 –