如果我不能使用ID,我怎样才能访问和更改CSS中完全动态生成的HTML中的字体颜色,因为我事先并不知道会生成多少相同的HTML标签,哪些它需要两种不同的(红色/绿色)颜色? (我是新来的,在JS中很新)
将在服务器上生成和收集数据。我让他们回来并在“fieldset”中进行排序,并在“可折叠”中进一步排序。数据“var a,b和c”汇集在一行(fieldset)中,并且应该是特定的字体颜色。因此,对于“var d”,对于此字体颜色,将从XML返回“xx”或“yy”并保存在“var d”中,因此字体颜色应为“红色”或“绿色”。
简短的部分脚本:
function addPart(currentIndex,currentPart)
{
var a = $(currentPart).find("a").text();
var b = $(currentPart).find("b").text();
var c = $(currentPart).find("c").text();
var d = $(currentPart).find("d").text();
if(d === "xx") {
$("div.productColor").css({"color":"green"});
} else {
$("div.productColor").css({"color":"red"});
};
$("#shoppingTableDiv").append (
"<div data-role='collapsible'>"
+ "<h3>"
+ "<div class='productColor'>"
+ "<fieldset class='ui-grid-b'>"
+ "<div class='ui-block-a'>"
+ a
+ "</div>"
+ "<div class='ui-block-b'>"
+ b
+ "</div>"
+ "<div class='ui-block-c'>"
+ c
+ "</div>"
+ "</fieldset>"
+ "</div>"
+ "</h3>"
+ "</div>");
$('#shoppingTableDiv').collapsibleset('refresh');
}
答案 0 :(得分:0)
我并不完全了解您希望如何为结果着色,但我认为您可以使用fieldset
类。
例如:
.ui-grid-b div { color: red; }
.ui-grid-c div { color: green; }
如果您不知道自己将拥有多少个字段集,并且无法使用代码示例中显示的字段集类,则可能会发现nth-child
选择器很有用。
也许是这样的:
fieldset:nth-child(2n) div { color: red; }
fieldset:nth-child(2n+1) div { color: green; }