0
for (var i = 0; i < colors.length; i++) {
    str += "<span class='ecolor' style='background-color:'" + colors[i] + "' title='" + colors[i] + "'></span>";
}

正确的书写顺序是什么style='background-color:'" + colors[i] + "'

所以它用背景颜色正确渲染。目前它不工作`

4

5 回答 5

4
 str += "<span class='ecolor' style='background-color:'" + colors[i] + "' title='" + colors[i] + "'></span>";

这将是这样的:

<span class='ecolor' style='background-color:'red' title='red'></span>

:注意和之间的额外引号r

 str += "<span class='ecolor' style='background-color: " + colors[i] + "' title='" + colors[i] + "'></span>";
于 2012-04-28T08:57:30.847 回答
0

您的跨度中没有任何内容,它是一个内联元素,因此将减少为无。没有内容或适当的样式。

你有它的造型吗?数组
中有什么?colors

于 2012-04-28T08:56:22.713 回答
0

原因是跨度内没有输入给它一个宽度:

你可以只插入一个空格:

for (var i = 0; i < colors.length; i++) {
    str += "<span class='ecolor' style='background-color:'" + colors[i] + "' title='" + colors[i] + "'> &nbsp;</span>";
}
于 2012-04-28T08:56:45.123 回答
0

代码应该看起来像

for (var i = 0; i < colors.length; i++) {
    str += "<span class=\"ecolor\" style=\"background-color:" + colors[i] + "\" title=\"" + colors[i] + "\"></span>";
}
于 2012-04-28T08:58:13.287 回答
0

您在冒号后关闭背景颜色:

不是

str += "<span class='ecolor' style='background-color:'" + colors[i] +

str += "<span class='ecolor' style='background-color:" + colors[i] +
于 2012-04-28T08:58:17.437 回答