0

我是 JS 的新手,任何帮助将不胜感激

有以下代码

<head>
  <script language="Javascript">
      function my(eve)
      {
        // Internet Explorer
        if (eve.srcElement)
        {
          alert(eve.srcElement.nodeName);
        }
        // Netscape and Firefox
          else if (eve.target)
        {
          alert(eve.target.nodeName);
        }
      };
</script>
</head>
<body onmousemove="my(eve);">
  //Some HTML code
</body>

将鼠标移到浏览器窗口上时在 FF 控制台中出现错误-

"ReferenceError: eve is not defined

my(eve);"
4

2 回答 2

3

您可能打算这样做:

<body onmousemove="my(event);">

也就是说,您想将event对象传递给您的my()函数。eve然后在该函数中,您可以通过变量引用它。e(请注意,使用名称而不是定义事件变量是很常见的eve- 一个偏好问题,它会以任何一种方式工作。)

此外,您的结束脚本标签不正确,您应该</script>没有<script>.

工作演示:http: //jsbin.com/oyoqeg/1/edit

(请注意,在 mousemove 上显示警报会使页面几乎无法使用,但这是另一个问题。)

于 2013-07-12T12:21:31.607 回答
2

你必须先定义“eve”。如果 eve 是你应该使用的文本my('eve'),如果 eve 是一个变量,你需要先定义它var eve =... ;

否则,如果您可能想使用eventor thismy(event)my(this)

于 2013-07-12T12:22:07.413 回答