我正在尝试使用字母而不是数字来创建BINGO游戏。我正在分解javascript代码。在我做随机字母之前,我想要" square0"显示一个字母(例如:" a")然而,字母" a"没有显示。我将不胜感激任何建议。这就是我所拥有的:
HTML:
<table class="bingo">
<tr>
<th>B</th>
<th>I</th>
<th>N</th>
<th>G</th>
<th>O</th>
</tr>
<tr>
<td id="square0"></td>
<td id="square1"></td>
<td id="square2"></td>
<td id="square3"></td>
<td id="square4"></td>
</tr>
<tr>
<td id="square5"></td>
<td id="square6"></td>
<td id="square7"></td>
<td id="square8"></td>
<td id="square9"></td>
</tr>
<tr>
<td id="square10"></td>
<td id="square11"></td>
<td id="free">Free</td>
<td id="square13"></td>
<td id="square14"></td>
</tr>
<tr>
<td id="square15"></td>
<td id="square16"></td>
<td id="square17"></td>
<td id="square18"></td>
<td id="square19"></td>
</tr>
<tr>
<td id="square20"></td>
<td id="square21"></td>
<td id="square22"></td>
<td id="square23"></td>
<td id="square24"></td>
</tr>
</table>
JS:
var $ = function (id) {
return document.getElementById(id);
}
window.onload = function () {
document.$("square0").innerHTML = "a";
}
答案 0 :(得分:1)
问题中显示的代码不起作用,因为您需要将获取元素快捷方式功能引用为$()
或window.$()
,将不引用为document.$()
window.onload = function () {
$("square0").innerHTML = "a";
// OR window.$("square0").innerHTML = "a";
}
你的小提琴不起作用,因为:
$()
功能window.onload =
jsfiddle为您提供的默认onload处理程序,这意味着当您尝试创建自己的onload处理程序时,onload事件已经发生了。在框架和左下方看一下左侧扩展标题:有一个下拉列表"onLoad"
,您应将其更改为"No wrap - in <head>"
(或"No wrap - in <body>"
)。答案 1 :(得分:0)
刚刚更新了小提琴,它缺少了这个功能。
var $ = function (id) {
return document.getElementById(id);
}
window.onload = { $("square0").innerHTML = "a"; }
这使得函数与调用函数分开,因为我认为你打算多次调用它。
&#39;&#39;&#39;已经是函数的一部分,因此在调用window.onload时不需要它,实际上你的代码正在执行document.document.getElementById
。
术语&#39;功能()&#39;在调用执行函数调用本身的变量onload
时$
内不需要。见functions as expressions
nnnnnn给出了一个有效的答案,包括jfiddle的onload解释(onload是左侧菜单中Frameworks下的一个jsfiddle选项)。