仅使用 JavaScript 选择随机 HTML 元素

Jen*_*out 2 html javascript

我正在尝试从 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)

meg*_*lop 5

一种更好的方法,不涉及设置元素 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 来生成有效的随机数。