无法将属性应用于CSS样式JQuery

时间:2015-06-21 22:02:52

标签: javascript jquery html css

我正在尝试为CSS样式应用不同的宽度。当我将CSS文件中的width设置为width: 100px;时,它会正确绘制两个div,但是,当我使用jQuery或更改HTML {{1}时,它无法正确设置width }}

HTML:

width

JavaScript的:

<div id="details" class="hideClass transbox" style="overflow:auto;"></div>
<div id="details2" class="hideClass transbox" style="overflow:auto;"></div>
<div id="dDur" class="dDur"></div>
<div id="dDur2" class="dDur2"></div>

底部的线条以前使用过但没有用,它们并不属于代码。

1 个答案:

答案 0 :(得分:1)

而不是"<div class='dDur' width='"+newDur+"'></div>",您应该使用"<div class='dDur' style='width:"+newDur+";'></div>"。此外,JS不能很好地处理多行字符串,你应该转义或删除该换行符,或者将其分成两个字符串:

detailString += "<div class='dDur' style='width:"+newDur+";'></div>" +
    "<div class='dDur2' style='width:"+newDur2+";'></div>";

此外,$("#")应该选择什么?

请注意:

$("#dDur").css({ width: newDur });
$("#dDur2").css({ width: newDur2 });

只会编辑当前元素的样式,而不是稍后用JS添加的样式。如果您将detailString附加到html中,则应在执行此操作后运行$().css()函数。