国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

Html5游戲開發(fā)之乒乓Ping Pong游戲示例(二)

2024-08-26 00:14:57
字體:
供稿:網(wǎng)友
Headerandfooter
Html5引進(jìn)了許多新的特性和改進(jìn),其中一項(xiàng)就是語義。Html5增加了新的元素來加強(qiáng)語義。我們現(xiàn)在只使用2個(gè),header和footer。<header>標(biāo)簽定義文檔的頁眉(介紹信息),<footer>標(biāo)簽定義section或document的頁腳。在典型情況下,該元素會(huì)包含創(chuàng)作者的姓名、文檔的創(chuàng)作日期以及/或者聯(lián)系信息。
[語義標(biāo)簽在HTML中提供有意義的信息,而不只是定義視覺效果。]

放置JavaScript代碼的最佳位置
我們將JavaScript代碼放置在</body>標(biāo)簽之前所有頁面內(nèi)容之后,而不是放置到<head></head>區(qū)域是有理由的。
通常,瀏覽器載入和渲染內(nèi)容是從上到下的。如果將JavaScript代碼放置到head區(qū)域,那么在將所有的JavaScript代碼載入完成之前Html文檔的內(nèi)容是不會(huì)被載入的。實(shí)際上,所有的載入和渲染都是被阻塞的(blocked),如果瀏覽器加載頁面中的JavaScript代碼。這就是我們?yōu)槭裁磳avaScript代碼放置在文檔最后的理由,這樣我們能夠提供更高的性能。
在翻譯這本書的時(shí)候,最新的jQuery版本是1.7(原話是:Atthetimeofwritingthisbook,thelatestjQueryversionis1.4.4。JQuery是有min版和開發(fā)版的,你可以隨意選擇)。這就是為什么jQuery文件在我們的代碼示例中的名字是jquery-1.7.min.js。這個(gè)版本號(hào)也許會(huì)和你使用的不通,但是用法是一樣的,除非jQuery有大的修改使新版本不再向下兼容。

頁面準(zhǔn)備好后運(yùn)行我們的代碼
我們需要在運(yùn)行我們的JavaScript代碼前確保頁面已經(jīng)準(zhǔn)備就緒.否則,當(dāng)我們嘗試訪問沒有加載完的元素的時(shí)候我們會(huì)得到一個(gè)錯(cuò)誤。jQuery提供給我們了一個(gè)方法來確保頁面是被加載完成的。代碼如下:

復(fù)制代碼 代碼如下:www.CuoXIn.com

jQuery(document).ready(function(){
//codehere.
});

實(shí)際上,我們只需要這樣寫:

復(fù)制代碼 代碼如下:www.CuoXIn.com

$(function(){
//codehere.
});

這個(gè)$標(biāo)記是jQuery的簡(jiǎn)寫。當(dāng)我們calling(這個(gè)詞是調(diào)用的意思,zhuangbility一下)$(something),我們實(shí)際上是在callingjQery(something).
$(function_callback)是readyevent(事件)的另一個(gè)簡(jiǎn)寫。
它是和以下代碼相同的:

復(fù)制代碼 代碼如下:www.CuoXIn.com

$(document).ready(function_callback);

同樣,和下面的也相同:

復(fù)制代碼 代碼如下:www.CuoXIn.com

jQuery(ducument).ready(function_callbak);

小測(cè)驗(yàn)
1、那個(gè)位置最適合放置JavaScript代碼?
a.<head>標(biāo)簽之前
b.插入到<head></head>元素中間。
c.<body>標(biāo)簽后
d.</body>標(biāo)簽前
創(chuàng)建PingPong游戲的元素
我們已經(jīng)準(zhǔn)備就緒,是時(shí)候創(chuàng)建PingPong游戲了。

動(dòng)起來

1、我們將繼續(xù)我們的jQuery安裝示例,在編輯器里打開index.html。
2、然后,在body里用DIV節(jié)點(diǎn)創(chuàng)建游戲平臺(tái),在游戲平臺(tái)中有2個(gè)拍子和一個(gè)球:

復(fù)制代碼 代碼如下:www.CuoXIn.com

<divid="game">
<divid="playground">
<divid="paddleA"class="paddle"></div>
<divid="paddleB"class="paddle"></div>
<divid="ball"></div>
</div>
</div>

3、我們現(xiàn)在構(gòu)建了游戲的對(duì)象,現(xiàn)在給他們樣式。放置一下代碼到head元素中:

復(fù)制代碼 代碼如下:www.CuoXIn.com

<style>
#playground{
background:#e0ffe0;
width:400px;
height:200px;
position:relative;
overflow:hidden;
}
#ball{
background:#fbb;
position:absolute;
width:20px;
height:20px;
left:150px;
top:100px;
border-radius:10px;
}
.paddle{
background:#bbf;
left:50px;
top:70px;
position:absolute;
width:30px;
height:70px;
}
#paddleB{
left:320px;
}
</style>

4、在最后的部分,我們將JavaScript邏輯放置到j(luò)Query引用之后。我們將它寫到一個(gè)單獨(dú)的文件里,因?yàn)槲覀兊拇a會(huì)越來越大。因此,我們需要?jiǎng)?chuàng)建一個(gè)名為HTML5/">html5games.pingpong.js在js文件夾里。
5、我們準(zhǔn)備好了JavaScript文件后,需要將他們連接到我們的Html文件。放置以下代碼在index.html文件的</body>標(biāo)簽前:

復(fù)制代碼 代碼如下:www.CuoXIn.com

<scriptsrc="js/jquery-1.7.min.js"></script>
<scriptsrc="js/html5games.pingpong.js"></script>

[譯者友情提示:試試

復(fù)制代碼 代碼如下:www.CuoXIn.com

<scriptsrc="js/jquery-1.4.4.js"/>
<scriptsrc="js/html5games.pingpong.js"/>

你會(huì)發(fā)現(xiàn)按規(guī)范寫會(huì)避免很多麻煩]
6、我們將游戲的邏輯放到html5games.pingpong.js。下面是我們現(xiàn)在唯一的邏輯,初始化球拍:

復(fù)制代碼 代碼如下:www.CuoXIn.com

//codeinside$(function(){}willrunaftertheDOMisloadedand
ready
$(function(){
$("#paddleB").css("top","20px");
$("#paddleA").css("top","60px");
});

7、現(xiàn)在讓我們?cè)跒g覽器中測(cè)試我們的成果。在瀏覽器中打開index.html文件我們應(yīng)該看到先以下截圖類似的畫面:
 
發(fā)生了什么?
在我們的游戲里有了2個(gè)球拍和1個(gè)球。我們還使用jQuery初始化了2個(gè)球拍的位置。
[今天就到這里,后面馬上就是關(guān)于jQuery選擇器和CSS函數(shù)的部分,有什么錯(cuò)誤或疑問歡迎給我留言]
看見你的評(píng)論是我最大的動(dòng)力!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 广德县| 石屏县| 苗栗市| 长宁县| 郎溪县| 西和县| 姜堰市| 青海省| 勃利县| 凤凰县| 新龙县| 建始县| 阳西县| 尚志市| 承德市| 弥渡县| 罗定市| 乾安县| 黑水县| 河北区| 日照市| 滦南县| 仙桃市| 临高县| 平湖市| 绍兴县| 宁波市| 民权县| 禹城市| 泰顺县| 盐城市| 乡宁县| 文山县| 广元市| 乐昌市| 宣威市| 阿坝| 车险| 迁西县| 陕西省| 安顺市|