【发布时间】:2014-03-14 23:09:18
【问题描述】:
所以我有这个代码:
var add, substract, multiply, divide;
var calculation = {
add: {
place: 2,
name: add,
calculation: function (a,b) {return a + b;},
output: function (a,b) {return a + ' + ' + b;},
buttonHTML: '+'
},
substract: {
place: 2,
name: substract,
calculation: function (a,b) {return a - b;},
output: function (a,b) {return a + ' - ' + b;},
buttonHTML: '-'
},
multiply: {
place: 1,
name: multiply,
calculation: function (a,b) {return a * b;},
output: function (a,b) {return a + ' * ' + b;},
buttonHTML: '*'
},
divide: {
place: 1,
name: divide,
calculation: function (a,b) {return a / b;},
output: function (a,b) {return a + ' / ' + b;},
buttonHTML: '/'
},
};
document.getElementById("calculator").innerHTML=('
for (var i = 0;i < 10; i++){
var btn = document.createElement ("BUTTON");
var t = document.createTextNode (i);
btn.appendChild(t);
};');
在我的 html 文件中,脚本被加载到 head 元素中。在正文中,我有一个名为计算器的 div 元素。现在我想做的是使用我拥有的循环在该 div 元素内创建按钮。但是我所写的似乎不起作用,我也找不到更好的解决方案。有什么想法吗?
【问题讨论】:
-
innerHTML 只能是字符串。你添加的东西看起来像是一个闭包和一个字符串的混合体,实际上并不存在。去掉
document.getElementById("calculator").innerHTML=part 并将其余代码放在一个在window.onload上调用的函数中。 -
但是如何让window.onload使用div元素中的功能呢?
-
我基本上是在 标签中加载脚本。 div 标签位于 标签中。 div id 是计算器,我想制作它以便脚本找到 div 并将按钮放入其中。
-
为什么不直接将按钮写入计算器Div?为什么要使用脚本来创建它们?
-
@JohannesH。是的,对不起,如果我不清楚。我的意思是 - 它不会做你期望它在当前上下文中做的事情。
标签: javascript html