Hy! 我正在寫關於種植植物的劇本。我的問題是與jQuery,CSS的一部分。我有這個循環:使用jQuery在for循環中更改div的css值
var i,elementWaterLevel, elementLifeLevel, elementFloweringLevel,floweringTime;
for (i = 0; i < globalNumberOfPlants; i++)
{
elementWaterLevel = $("#waterLevel[plantId=" + globalData[i].plantId + "]");
elementLifeLevel = $("#lifeLevel[plantId=" + globalData[i].plantId + "]");
elementFloweringLevel = $("#floweringLevel[plantId=" + globalData[i].plantId + "]");
floweringTime = Math.round((globalData[i].currentFloweringTime/globalData[i].marijuanaFloweringTime) * 200);
elementWaterLevel.css("height", Math.round((globalData[i].currentWaterLevel) * 220));
elementLifeLevel.css("height", Math.round((globalData[i].currentLifeLevel) * 220));
elementFloweringLevel.css("width", floweringTime);
if (globalData[i].currentLifeLevel == 0) {
$("#littlePlantStatus[plantId=" + globalData[i].plantId + "]").css("border", "5px solid red");
}
else {
if (globalData[i].currentFloweringTime/globalData[i].plantFloweringTime == 1) {
$("#littlePlantStatus[plantId=" + globalData[i].plantId + "]").css("border", "5px solid green");
$("#harvestThePlant[plantId=" + globalData[i].plantId + "]").show();
}
else {
$("#littlePlantStatus[plantId=" + globalData[i].plantId + "]").css("border", "1px solid black");
$("#harvestThePlant[plantId=" + globalData[i].plantId + "]").hide();
}
}
}
globalData
是一個2d json對象。我在裏面存儲植物的細節。
globalNumberOfPlants
是植物的數量。
在第一環路(其中plantId = 1)一切的權利,但在秒環(或第三等)(其中,plantId = 2)的CSS什麼也不做。我已經檢查了JavaScript中計算數據的循環內部的其他變量,它們是正確的,但是css不顯示它們。
我的html代碼:
<div id="littlePlantStatus" plantId="1">
<div id="waterStatus"><div id="waterLevel" plantId="1"></div></div>
<div id="lifeStatus"><div id="lifeLevel" plantId="1"></div></div>
<div id="floweringStatus"><div id="floweringLevel" plantId="1"></div></div>
<div id="plantActions">
<input type="button" id="waterThaPlant"/><input type="button" id="addFertilizer"/><input type="button" id="checkThePlant" />
<input type="button" id="harvestThePlan"style="display: none;" plantId="1"/>
</div>
</div>
<div id="littlePlantStatus" plantId="2">
<div id="waterStatus"><div id="waterLevel" plantId="2"></div></div>
<div id="lifeStatus"><div id="lifeLevel" plantId="2"></div></div>
<div id="floweringStatus"><div id="floweringLevel" plantId="2"></div></div>
<div id="plantActions">
<input type="button" id="waterThaPlant"/><input type="button" id="addFertilizer"/><input type="button" id="checkThePlant" />
<input type="button" id="harvestThePlan"style="display: none;" plantId="2"/>
</div>
</div>
所以對於秒環,jQuery的找不到的元素。怎麼了?
元素'id'屬性需要是唯一的,或者不是使用id的使用類,而是使用類選擇器,即:'$(「.waterLevel [plantId = 1]」)' – 2015-04-04 14:46:15