由于其他答案似乎不适合您,因此我将尝试提出建议。
我猜你是在一个你添加事件监听器的元素还不可用的地方初始化你的 JavaScript。这是解决此问题的方法。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Josue Espinosa</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script src="animate.js"></script>
</head>
<body>
<div id="menu">
</div>
<script type="text/javascript">
$('#menu').hover(function () {
$("#menu").stop().animate({ width: "300px" });
});
</script>
</body>
</html>
在此示例中,JavaScript 位于您要添加侦听器的元素的正下方,因此可以保证它在 DOM 中可用。
或者,您可以将 JS 包装在一个事件周围,以便在文档准备好后触发。这是一个例子:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Josue Espinosa</title>
<link href="style.css" rel="stylesheet" type="text/css">
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script src="animate.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('#menu').hover(function () {
$("#menu").stop().animate({ width: "300px" });
});
});
</script>
</head>
<body>
<div id="menu">
</div>
</body>
</html>
注意 JavaScript 元素的顺序也很重要。