我正在尝试从 HTML 代码中选择一个元素,然后在 JavaScript 中使用它(需要突出显示)。HTML 由一个包含 36 个 td 的表格组成。
到目前为止我的代码:
var box;
function getRandom()
{
return (Math.floor(Math.random()*37))
}
function highlight()
{
box = document.getElementById(getRandom());
box.style.backgroundColor = "yellow";
}
Run Code Online (Sandbox Code Playgroud)
如果有人能给我任何指示,我将不胜感激。我知道使用 jQuery 会很容易,但我还没有开始学习。编辑:HTML 代码摘录,最多为 name="36"。
<table id="reflexTable">
<tbody>
<tr>
<td name="1"></td>
<td name="2"></td>
<td name="3"></td>
<td name="4"></td>
<td name="5"></td>
<td name="6"></td>
</tr>
Run Code Online (Sandbox Code Playgroud)
一种更好的方法,不涉及设置元素 id:
function highlight() {
// get all TDs that are descendants of table#reflexTable:
var tds = document.getElementById('reflexTable').getElementsByTagName('td');
// get a random int between 0 (inclusive) and tds.length (exclusive)
var rand = Math.floor( Math.random() * tds.length );
// highlight td at that index
tds[rand].style.backgroundColor = "yellow";
}
Run Code Online (Sandbox Code Playgroud)
这种方法的一大优点是,您可以添加/删除任意数量的 TD,而无需编辑 JS 来生成有效的随机数。