jQuery选择器无法正常工作

时间:2014-02-01 21:38:49

标签: javascript jquery html html5

我一直试图找出为什么我的JavaScript代码不起作用。警报工作正常,但当我尝试写div时它什么也没做。我究竟做错了什么?我一直试图谷歌答案,但这并没有太大的帮助。

 <!DOCTYPE html> 

<html>
<head>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script src="gamejavascript.js" type="text/javascript"> </script>  

<link rel="stylesheet" type="text/css" href="gameStyle.css">

<title>Text Adventure RPG</title>   

</head>

<body>
<p>hey  </p>
    <div id="eventWindow">
        <div id="title">Black Forest</div>
        <div id="eventContent">You have entered the black forest. Lucky you!</div>
    </div>
    <div id="itemList">Hey hey hey </div> 

    <div id="userStat"> </div> 

</body>

</html>

我的javascript是

$("p").append("HEY HEYH YEYEHE."); 
alert("You madam are a horse!");
$("#userStat").html("Hey baby"); 



/* var user = function(attack,health)
{
this.attack = attack; 
this.health = health;
}; 

var player = new user(10,100); */ 

非常感谢你的帮助!

-Brent

3 个答案:

答案 0 :(得分:9)

您需要将JavaScript放在关闭正文标记之前的页面末尾或头部并包含在document ready call中。例如:

$( document ).ready(function() {
    // your code here
});

jsFiddle example (将代码放在文档末尾)

现在你的方式,你正试图在尚不存在的元素上执行代码。

答案 1 :(得分:5)

将代码包装在document-ready handler并假设已加载jquery

$(document).ready(function() {
   $("p").append("HEY HEYH YEYEHE.");
});

答案 2 :(得分:2)

为了使jQuery正常运行,应首先加载html内容。因此,您应该将代码放在文档就绪处理程序中。试试这个:

$( document ).ready(function() {
    // put your code here as it is 
});