Javascript 未捕获类型错误:无法读取属性';风格';未定义的类型:document.getElementsByName.onmouseinter

Javascript 未捕获类型错误:无法读取属性';风格';未定义的类型:document.getElementsByName.onmouseinter,javascript,Javascript,我有两个文件: index.html和code.js 我有两个问题: 首先,“查找单词:”语句不会出现在浏览器中 其次,我有一个for循环来创建一个表(10x10)。此表包含随机字母,我想给鼠标悬停的字母的背景上色,但每次悬停时都会出现相同的错误:uncaughttypeerror:无法读取未定义的:document.getElementsByName.onmouseinter的属性'style' document.write(“查找单词:”); var-mable=“abcdefghijkl

我有两个文件:
index.html
code.js

我有两个问题:

首先,“查找单词:”语句不会出现在浏览器中

其次,我有一个for循环来创建一个表(10x10)。此表包含随机字母,我想给鼠标悬停的字母的背景上色,但每次悬停时都会出现相同的错误:
uncaughttypeerror:无法读取未定义的:document.getElementsByName.onmouseinter的属性'style'

document.write(“查找单词:”);
var-mable=“abcdefghijklmnopqrstuvxyz”;
var s='';

对于(var j=0;j,只需在onmouseenter函数中使用
this
,即可指示要更改的元素

document.write(“查找单词:”);
var-mable=“abcdefghijklmnopqrstuvxyz”;
var s='';

对于(var j=0;j而言,问题在于这一行:

document.getElementsByName('letter')[i].style.backgroundColor="red";
mouseenter
侦听器在每次运行
for
循环时都会被覆盖,因此
i
始终等于100。请尝试使用
this
引用要将侦听器附加到的元素:

this.style.backgroundColor="red";
document.body.innerHTML=(“查找单词:

”); var-mable=“abcdefghijklmnopqrstuvxyz”; var s=''; 对于(var j=0;j<10;++j){ s+=''; 对于(变量i=0;i<10;++i){ s+=''+可能的.charAt(Math.floor(Math.random()*可能的.length))+''; } s+=''; } s+=''; document.body.innerHTML+=s; for(var i=0;i

为什么不直接使用css呢

td:hover {
   background-color: red;
}
顺便说一句,您编写了“Find Word:”body,但重写了整个body,即document.body.innerHTML=s。。。
你必须准备好你的第一句话,或者,更好的是,在你的身体中提供一个带有标题的html和一个专门的div来构建你的表格。

谢谢你,先生!我是JS新手,但是的,这是一个巨大的失败,我猜:Dno问题!:)你可以接受答案,这样我就可以得到一些荣誉了,我需要15个荣誉,但我会尽快:)您没有指出问题中给定的代码为什么不起作用,这可能对OP有用。“Find word:”正在消失,因为在您将其写入文档后,您正在用生成的表替换文档的整个html内容。