通过Javascript创建Div-语法问题
编辑:新代码就在下面。下面是原始问题。我请求帮助找出这段代码的错误,因为在我一周大的眼中,它似乎很好通过Javascript创建Div-语法问题,javascript,html,appendchild,Javascript,Html,Appendchild,编辑:新代码就在下面。下面是原始问题。我请求帮助找出这段代码的错误,因为在我一周大的眼中,它似乎很好 function creatediv(){ for (i=1;i<13;i++){ var newcovdiv = document.createElement('div'); newcovdiv.setAttribute('id',"cover_"+i); newcovdiv.style.width="900px";
function creatediv(){
for (i=1;i<13;i++){
var newcovdiv = document.createElement('div');
newcovdiv.setAttribute('id',"cover_"+i);
newcovdiv.style.width="900px";
newcovdiv.style.height="25px";
newcovdiv.style.position="relative";
newcovdiv.style.left="0px";
newcovdiv.style.top=(i-1)*25+"px";
newcovdiv.style.background="#FFFFFF";
newcovdiv.style.display="none";
document.getElementById('staff').appendChild(newcovdiv);
}
var newstaffdiv = document.createElement('div');
newstaffdiv.setAttribute('id',"staff_sub");
newstaffdiv.style.width="900px";
newstaffdiv.style.height="300px";
newstaffdiv.style.position="relative";
newstaffdiv.style.left="0px";
newstaffdiv.style.top="0px";
newstaffdiv.style.backgroundImage="url(../images/staff_sub.png)";
newstaffdiv.style.display="none";
document.getElementbyId('staff').appendChild(newstaffdiv);
for (i=13;i<101;i++){
var newcovrdiv = document.createElement('div');
newcovrdiv.setAttribute('id',"cover_"+i);
newcovrdiv.style.width="900px";
newcovrdiv.style.height="25px";
newcovrdiv.style.position="relative";
newcovrdiv.style.left="0px";
newcovrdiv.style.top=(i-1)*25+"px";
newcovrdiv.style.background="#FFFFFF";
newcovrdiv.style.display="none";
document.getElementById('paper').appendChild(newcovrdiv);
}
}
函数creatediv(){
对于(i=1;i,您的代码有几个明显的问题:
1) 您不能使用背景图像,因为在使用点格式时属性名称不能连字号,而且它缺少一个“
2) 所有数字类型属性(顶部、左侧、宽度、高度)都应该是css字符串,因此它们都需要转换为
style.width = '900px'
3) 您的onload函数调用creatediv(),但是您发布的函数称为letsgetiton,不确定这是否仅仅是因为您发布它的方式或它在实际代码中的方式
4) document.getElement*B*yId
案件事项
您可能想查看firefox中的Chrome开发者工具或firebug。该错误会立即出现。我注意到两个问题:
以下代码行试图访问无效属性,并且没有右引号
newstaffdiv.style.background-image="url(../images/staff_sub.png);
应该是这样的:
newstaffdiv.style.backgroundImage="url(../images/staff_sub.png)";
您正在调用函数createDiv()
,但提供的函数名为letsgetiton()
您缺少一个背景图像的结尾“
,它应该是backgroundImage
您说的
那么createDiv()在哪里呢函数?你可以在这里开始调试。只需复制/粘贴你的代码并单击lint即可查看报告。你有很多错误。@Elclars我在jshint中也看到了很多错误lol“style.background image”无效。哈哈,是的,我将函数名改为post here,不想用Letsgeton()这样的名字显得太傻.在实际代码中,调用和函数是相同的。好的,非常感谢。我修复了有问题的行,但正如预期的那样,它仍然无法工作。我尝试通过放置警报(“文本”)进行测试;在函数中,所以如果弹出警报,那么我知道我们至少进入了函数。我将编辑我的问题以包含更新的代码。哦,哇!Chrome中的开发工具交易是蜜蜂的膝盖!这可能是你能说的最长期的有用的话。哦,不,真的,这太棒了。这太棒了。这太棒了这正是我所需要的。我不知道开发工具的存在,但它会大大加快我的工作。哦,这太棒了,你也是。
style.width = '900px'
newstaffdiv.style.background-image="url(../images/staff_sub.png);
newstaffdiv.style.backgroundImage="url(../images/staff_sub.png)";