好玩的js代码,好看的js

http://www.itjxue.com  2023-01-04 17:14  来源:未知  点击次数: 

关于JS的代码

孩子,这是一个回调函数,你当然要传入evt了,evt是你的形参,然而window.event是脚本自己的,所以var e=evt||window.event;就是这2个值的其中任一即可。所以你不传入的话,就出错了!

哪位JS高手帮我写一下代码

慢了一步~不过既然写了,就给你啦~

测试页面在附件里。

js部分代码如下:

function?foSort(sortId,direction){

??????var?sid=parseInt(sortId);

?var?ot=document.getElementById("DHlist");

?if?(sid1?||?sidot.rows.length-2){return?false;}

?var?nsid=direction.toLowerCase()=="up"??(sid=1??ot.rows.length-2:sid-1):(sid+1ot.rows.length-2??1:sid+1);

?var?svs=document.getElementsByName("sort");

?

?//替换sort的input的value--start--

?//看你的需要了,如果是要随着上下一起移动,可以把这一段注释掉

?var?tsv=svs[sid-1].value;?//这里转换为0开头的索引,sort的input比表格少2行,分别是开头和结尾????

?svs[sid-1].value=svs[nsid-1].value;

?svs[nsid-1].value=tsv;??

?//---end--

?

?//还原编号列---start---

?//如果要求编号也一起山下移动,可把此段注释掉

?var?tid=ot.rows[sid].cells[0].innerHTML;

?ot.rows[sid].cells[0].innerHTML=ot.rows[nsid].cells[0].innerHTML;

??????ot.rows[nsid].cells[0].innerHTML=tid;

?//--end---

?

?//上下切换--start----

??????var?tr=ot.rows[sid].innerHTML;??

?ot.rows[sid].innerHTML=ot.rows[nsid].innerHTML;

?ot.rows[nsid].innerHTML=tr;

?//---end---

}

完整HTML+js代码:

html

headmeta http-equiv="Content-Type" content="text/html; charset=gb2312"

/headbody

style type="text/css"

table {border-collapse:collapse;

width:80%;

text-align:center;

}

th {

background:#eee;

}

th,td {

line-height:25px;

}

th,td {

border-bottom:1px solid #ccc;

}

/style

form method="post"

table id="DHlist"

trth编号/thth导航名/thth导航说明/thth操作/thth排序/th/tr

tr

input type="hidden" value="1" name="sort" /

td1/td

td导航1/td

td导航说明1/td

tda href="?action=updateid=1"修改/anbsp;#124;nbsp;a href="?action=deleteid=1"删除/a/td

tdinput type="button" onClick="foSort(this.parentNode.parentNode.cells[0].innerHTML,'up')"value="向上" /input type="button" onClick="foSort(this.parentNode.parentNode.cells[0].innerHTML,'down')"value="向下" //td

/tr

tr

input type="hidden" value="2" name="sort" /

td2/td

td导航2/td

td导航说明2/td

tda href="?action=updateid=1"修改/anbsp;#124;nbsp;a href="?action=deleteid=1"删除/a/td

tdinput type="button" onClick="foSort(this.parentNode.parentNode.cells[0].innerHTML,'up')"value="向上" /input type="button" onClick="foSort(this.parentNode.parentNode.cells[0].innerHTML,'down')"value="向下" //td

/tr

tr

input type="hidden" value="3" name="sort" /

td3/td

td导航3/td

td导航说明3/td

tda href="?action=updateid=3"修改/anbsp;#124;nbsp;a href="?action=deleteid=1"删除/a/td

tdinput type="button" onClick="foSort(this.parentNode.parentNode.cells[0].innerHTML,'up')"value="向上" /input type="button" onClick="foSort(this.parentNode.parentNode.cells[0].innerHTML,'down')"value="向下" //td

/tr

trtd colspan="6"input type="submit" value="提交" name="send" /td/tr

/table

/form

script type="text/javascript"

function foSort(sortId,direction){

? ? var sid=parseInt(sortId);

?var ot=document.getElementById("DHlist");

?if (sid1 || sidot.rows.length-2){return false;}

?var nsid=direction.toLowerCase()=="up"? (sid=1? ot.rows.length-2:sid-1):(sid+1ot.rows.length-2? 1:sid+1);

?var svs=document.getElementsByName("sort");

?//替换sort的input的value--start--

?//看你的需要了,如果是要随着上下一起移动,可以把这一段注释掉

?var tsv=svs[sid-1].value; //这里转换为0开头的索引,sort的input比表格少2行,分别是开头和结尾 ?

?svs[sid-1].value=svs[nsid-1].value;

?svs[nsid-1].value=tsv;

?//---end--

?//还原编号列---start---

?//如果要求编号也一起山下移动,可把此段注释掉

?var tid=ot.rows[sid].cells[0].innerHTML;

?ot.rows[sid].cells[0].innerHTML=ot.rows[nsid].cells[0].innerHTML;

? ? ot.rows[nsid].cells[0].innerHTML=tid;

?//--end---

?//上下切换--start----

? ? var tr=ot.rows[sid].innerHTML;

?ot.rows[sid].innerHTML=ot.rows[nsid].innerHTML;

?ot.rows[nsid].innerHTML=tr;

?//---end---

}

/script

/body

/html

求个简单javascript代码 谢谢,网站菜单功能

不用说自己菜不菜的,能有这个学习的精神已经很值得鼓励了

呵呵,下面,我来给你介绍几个网站常见的菜单

第一个:仿网易的滑动门导航菜单

html xmlns=""

head

meta http-equiv="Content-Type" content="text/html; charset=gb2312" /

title仿网易的滑动门技术,用DIV+CSS技术实现/title

style type="text/css"

!--

#header {

background-color: #F8F4EF;

height: 200px;

width: 400px;

margin: 0px;

padding: 0px;

border: 1px solid #ECE1D5;

font-family: "宋体";

font-size: 12px;

}

#menu {

margin: 0px;

padding: 0px;

list-style-type: none;

}

#menu li {

display: block;

width: 100px;

text-align: center;

float: left;

margin: 0px;

padding-top: 0.2em;

padding-right: 0px;

padding-bottom: 0.2em;

padding-left: 0px;

cursor: hand;

}

.sec1 { background-color: #FFFFCC;}

.sec2 { background-color: #00CCFF;}

.block { display: block;}

.unblock { display: none;}

--

/style

/head

body

script language=javascript

function secBoard(n)

{

for(i=0;imenu.childNodes.length;i++)

menu.childNodes[i].className="sec1";

menu.childNodes[n].className="sec2";

for(i=0;imain.childNodes.length;i++)

main.childNodes[i].style.display="none";

main.childNodes[n].style.display="block";

}

/script

div id="header"

ul id="menu"

li onMouseOver="secBoard(0)" class="sec2"最新新闻/li

li onMouseOver="secBoard(1)" class="sec1"最新文章/li

li onMouseOver="secBoard(2)" class="sec1"最新日志/li

li onMouseOver="secBoard(3)" class="sec1"论坛新帖/li

/ul

!--内容显示区域--

ul id="main"

li class="block"第一个内容/li

li class="unblock"第二个内容/li

li class="unblock"第三个内容/li

li class="unblock"第四个内容/li

/ul

!--内容显示区域--

/div

/body

/html

这里基本上是使用Css与Div的结合,在整个布局中已层为单位,实行滑动菜单的是一个javascript脚本函数,调用就可以了,看不懂不要紧,日渐积累才是重要

第二个:经典实用的触发型导航(这是鼠标单击事件控制)

html

head

meta http-equiv="Content-Type" content="text/html; charset=gb2312"

title网页特效代码|JsCode.CN|---经典实用的触发型导航菜单/title

/head

body

STYLE type=text/css.sec1 {

BORDER-RIGHT: gray 1px solid; BORDER-TOP:

#ffffff 1px solid; BORDER-LEFT: #ffffff 1px

solid; CURSOR: hand; COLOR: #000000; BORDER-

BOTTOM: #ffffff 1px solid; BACKGROUND-COLOR:

#eeeeee

}

.sec2 {

BORDER-RIGHT: gray 1px solid; BORDER-TOP:

#ffffff 1px solid; FONT-WEIGHT: bold; BORDER-

LEFT: #ffffff 1px solid; CURSOR: hand; COLOR:

#000000; BACKGROUND-COLOR: #d4d0c8

}

.main_tab {

BORDER-RIGHT: gray 1px solid; BORDER-

LEFT: #ffffff 1px solid; COLOR: #000000; BORDER-

BOTTOM: gray 1px solid; BACKGROUND-COLOR: #d4d0c8

}

/STYLE

!--JavaScript部分--

SCRIPT language=javascript

function secBoard(n)

{

for(i=0;isecTable.cells.length;i++)

secTable.cells

[i].className="sec1";

secTable.cells[n].className="sec2";

for(i=0;imainTable.tBodies.length;i++)

mainTable.tBodies

[i].style.display="none";

mainTable.tBodies

[n].style.display="block";

}

/SCRIPT

!--HTML部分--

TABLE id=secTable cellSpacing=0 cellPadding=0 width=549 border=0

TBODY

TR align=middle height=20

TD class=sec2 onclick=secBoard(0) width="10%"关于TBODY标记/TD

TD class=sec1 onclick=secBoard(1) width="10%"关于cells集合/TD

TD class=sec1 onclick=secBoard(2) width="10%"关于tBodies集合/TD

TD class=sec1 onclick=secBoard(3) width="10%"关于display属性/TD/TR/TBODY/TABLE

TABLE class=main_tab id=mainTable height=240 cellSpacing=0 cellPadding=0 width=549 border=0!--关于TBODY标记--

TBODY style="DISPLAY: block"

TR

TD vAlign=top align=middleBRBR

TABLE cellSpacing=0 cellPadding=0 width=490 border=0

TBODY

TR

TD指定行做为表体。

BR注释:TBODY要素是块要素,并且需要结束标

签。BR 即使如果表格没有显式定义TBODY

要素,该要素也提供给所有表。BRBR

参考:《动态HTML参考和开发应用大全》(人民邮电出

版社

Microsoft Corporation著

北京华中兴业科技发展有限公司

译)

BRBR/TD/TR/TB

ODY/TABLE/TD/TR/T

BODY!--关于cells集合--

TBODY style="DISPLAY:

none"

TR

TD vAlign=top

align=middleBRBR

TABLE cellSpacing=0

cellPadding=0 width=490 border=0

TBODY

TR

TD检索表行或者整个

表中所有单元格的集合。BR应用于TR、TABLE。

BRBR参考:《动态HTML参考和开发应

用大全》(人民邮电出版社

Microsoft Corporation著

北京华中兴业科技发展有限公司

译)

BRBR/TD/TR/TB

ODY/TABLE/TD/TR/T

BODY!--关于tBodies集合--

TBODY style="DISPLAY:

none"

TR

TD vAlign=top

align=middleBRBR

TABLE cellSpacing=0

cellPadding=0 width=490 border=0

TBODY

TR

TD检索表中所有TBODY

对象的集合。对象在该集合中按照HTML源顺序排列。

BR应用于TABLE。BRBR参考:

《动态HTML参考和开发应用大全》(人民邮电出版社

Microsoft Corporation著

北京华中兴业科技发展有限公司

译)

BRBR/TD/TR/TB

ODY/TABLE/TD/TR/T

BODY!--关于display属性--

TBODY style="DISPLAY:

none"

TR

TD vAlign=top

align=middleBRBR

TABLE cellSpacing=0

cellPadding=0 width=490 border=0

TBODY

TR

TD设置或者检索对象

是否被提供。BR可能的值为block、none、

inline、list-item、table-header-group、table-

footer-group。BR该特性可读写,块要素默认

值为block,内联要素默认值为inline;层叠样式表

(CSS)属性不可继承。BRBR参考:《

动态HTML参考和开发应用大全》(人民邮电出版社

Microsoft Corporation著

北京华中兴业科技发展有限公司译)

BRBRA

href="" target=_blank点击此处

/A可参阅微软A href="" target=_blankMSDN在线/A上的解释。

/TD/TR/TBODY/TABLE

;/TD/TR/TBODY/TABLEg

t;/body

/html

这里跟上面不同的区别在与这是鼠标移动和滑动的事件区别!

第三个:仿拍拍的切换效果菜单(里面的图片是我放上去的,所以会看不到图片的,呵呵 继续)

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns="" lang="zh-CN"

head

meta http-equiv="Content-Language" content="zh-cn" /

meta http-equiv="Content-Type" content="text/html; charset=gb2312" /

meta name="robots" content="all" /

title网页特效|网页特效代码(JsHtml.cn)---仿拍拍paipai.com首页产品图片随机轮显切换效果/titlestyle

body {font-size:12px}

img {border:0px}

#sale{right:206px;top:0;width:260px;background:#fff}

#saleTitle{text-align:right;padding-top:5px;padding-right:5px;width:255px;height:20px;background:url("images/saleTitle.gif") no-repeat}

#saleList{margin-top:5px}

#saleList .saleTwo{height:108px;background:url("images/salelineH.gif") bottom repeat-x;}

#saleList a{display:block;height:108px;width:86px;text-align:center;float:left;overflow:hidden}

#saleList a.saleItem{background:url("images/salelineV.gif") right repeat-y;}

#saleList a img{margin:5px 0}

#saleList a:hover{background-color:#EBFFC5}

/style

script type="text/javascript"

rnd.today=new Date();

rnd.seed=rnd.today.getTime();

function rnd(){

rnd.seed = (rnd.seed*9301+49297) % 233280;

return rnd.seed/(233280.0);

}

function rand(number){

return Math.ceil(rnd()*number)-1;

}

function nextSale(order){

if(order=="up") saleNum--;

else saleNum++;

if(saleNum2) saleNum=0

else if(saleNum0) saleNum=2;

//alert(saleNum);

for(i=0;i3;i++)

document.getElementById("saleList"+i).style.display="none";

document.getElementById("saleList"+saleNum).style.display="";

}

/script

/head

body

div id="sale" class="absolute overflow"

div id="saleTitle" class="absolute"

a href="javascript:nextSale('up')" title="点击到上一屏"

img src="images/saleFore.gif" hspace="4" onmouseover="this.src='images/saleForeOver.gif'" onmouseout="this.src='images/saleFore.gif'" //aa href="javascript:nextSale('down')" title="点击到下一屏"img src="images/saleNext.gif" onmouseover="this.src='images/saleNextOver.gif'" onmouseout="this.src='images/saleNext.gif'" //a/div

div class="overflow" style="height:330px" id="saleList"

script type="text/javascript"var saleNum=rand(3);/script

div id="saleList0" style="display:none"

div class="saleTwo"

a class="saleItem" href="" target="_blank"

div

img alt="圣诞浪漫饰品超级大促" src="/jsimages/UploadFiles_3321/200804/20080423085515804.jpg" width="65" height="65" //div

div

圣诞浪漫饰品br /

超级大促/div

/a

a class="saleItem" href="" target="_blank"

div

img alt="摄像头集结号给你新的感觉" src="/jsimages/UploadFiles_3321/200804/20080423085516472.jpg" width="65" height="65" //div

div

摄像头集结号br /

给你新的感觉/div

/aa href="" target="_blank"

div

img alt="好感度提升韩版娃娃装" src="/jsimages/UploadFiles_3321/200804/20080423085516162.jpg" width="65" height="65" //div

div

好感度提升br /

韩版娃娃装/div

/a/div

div class="saleTwo"

a class="saleItem" href="" target="_blank"

div

img alt="复古牛仔外套特惠119元起" src="/jsimages/UploadFiles_3321/200804/20080423085516293.jpg" width="65" height="65" //div

div

复古牛仔外套br /

特惠119元起/div

/a

a class="saleItem" href="" target="_blank"

div

img alt="圣诞拍拍特供运动服3折" src="/jsimages/UploadFiles_3321/200804/20080423085516802.jpg" width="65" height="65" //div

div

圣诞拍拍特供br /

运动服3折/div

/aa href="" target="_blank"

div

img alt="摄像头集结号给你新的感觉" src="/jsimages/UploadFiles_3321/200804/20080423085516472.jpg" width="65" height="65" //div

div

摄像头集结号br /

给你新的感觉/div

/a/div

div

a class="saleItem" href="" target="_blank"

div

img alt="圣诞拍拍特供电脑周边4折" src="/jsimages/UploadFiles_3321/200804/20080423085516530.jpg" width="65" height="65" //div

div

圣诞拍拍特供br /

电脑周边4折/div

/a

a class="saleItem" href="" target="_blank"

div

img alt="party扮靓甜美腮红" src="/jsimages/UploadFiles_3321/200804/20080423085516658.jpg" width="65" width="65" height="65" //div

div

party扮靓br /

甜美腮红/div

/aa href="" target="_blank"

div

img alt="好感度提升韩版娃娃装" src="/jsimages/UploadFiles_3321/200804/20080423085516162.jpg" width="65" height="65" //div

div

好感度提升br /

韩版娃娃装/div

/a/div

/div

div id="saleList1" style="display:none"

div class="saleTwo"

a class="saleItem" href="" target="_blank"

div

img alt="新奇好玩便宜尽在网游频道" src="/jsimages/UploadFiles_3321/200804/20080423085516612.jpg" width="65" height="65" //div

div

新奇好玩便宜br /

尽在网游频道/div

/a

a class="saleItem" href="" target="_blank"

div

img alt="展现高贵气质骑士系马靴" src="/jsimages/UploadFiles_3321/200804/20080423085516202.jpg" width="65" height="65" //div

div

展现高贵气质br /

骑士系马靴/div

/aa href="" target="_blank"

div

img alt="摄像头集结号给你新的感觉" src="/jsimages/UploadFiles_3321/200804/20080423085516472.jpg" width="65" height="65" //div

div

摄像头集结号br /

给你新的感觉/div

/a/div

div class="saleTwo"

a class="saleItem" href="" target="_blank"

div

img alt="永不过时条纹毛衣" src="/jsimages/UploadFiles_3321/200804/20080423085516984.jpg" width="65" height="65" //div

div

永不过时br /

条纹毛衣/div

/a

a class="saleItem" href="" target="_blank"

div

img alt="圣诞拍拍特供运动鞋2折" src="/jsimages/UploadFiles_3321/200804/20080423085516651.jpg" width="65" height="65" //div

div

圣诞拍拍特供br /

运动鞋2折/div

/aa href="" target="_blank"

div

img alt="好感度提升韩版娃娃装" src="/jsimages/UploadFiles_3321/200804/20080423085516162.jpg" width="65" height="65" //div

div

好感度提升br /

韩版娃娃装/div

/a/div

div

a class="saleItem" href="" target="_blank"

div

img alt="精简唯美索爱K630" src="/jsimages/UploadFiles_3321/200804/20080423085516302.jpg" width="65" height="65" //div

div

精简唯美br /

索爱K630/div

/a

a class="saleItem" href="" target="_blank"

div

img alt="原装瑞士军刀精选" src="/jsimages/UploadFiles_3321/200804/20080423085516549.jpg" width="65" width="65" height="65" //div

div

原装瑞士军刀br /

精选/div

/aa href="" target="_blank"

div

img alt="超薄机身索爱W880" src="/jsimages/UploadFiles_3321/200804/20080423085516711.jpg" width="65" height="65" //div

div

超薄机身br /

索爱W880/div

/a/div

/div

div id="saleList2" style="display:none"

div class="saleTwo"

a class="saleItem" href="" target="_blank"

div

img alt="各就各味秋冬饮食计划" src="/jsimages/UploadFiles_3321/200804/20080423085516704.jpgtype=3" width="65" height="65" //div

div

各就各味br /

秋冬饮食计划/div

/aa href="" target="_blank"

div

img alt="好感度提升韩版娃娃装" src="/jsimages/UploadFiles_3321/200804/20080423085516162.jpg" width="65" height="65" //div

div

好感度提升br /

韩版娃娃装/div

/a/div

div class="saleTwo"

a class="saleItem" href="" target="_blank"

div

img alt="圣诞拍拍特供随身视听5折" src="/jsimages/UploadFiles_3321/200804/20080423085516375.jpg" width="65" height="65" //div

div

圣诞拍拍特供br /

随身视听5折/div

/aa href="" target="_blank"

div

img alt="超薄机身索爱W880" src="/jsimages/UploadFiles_3321/200804/20080423085516711.jpg" width="65" height="65" //div

div

超薄机身br /

索爱W880/div

/a/div

div

a class="saleItem" href="" target="_blank"

div

img alt="我爱我家家居大抢购" src="/jsimages/UploadFiles_3321/200804/20080423085516954.jpg" width="65" height="65" //div

div

我爱我家br /

家居大抢购/div

/aa href="" target="_blank"

div

img alt="超值彩妆套装变身派对女王" src="/jsimages/UploadFiles_3321/200804/20080423085516919.jpg" width="65" width="65" height="65" //div

div

超值彩妆套装br /

变身派对女王/div

/a/div

/div

/div

/div

script type="text/javascript"document.getElementById("saleList"+saleNum).style.display="";/script

p /p

p更多网页特效代码尽在 a href=""网页特效代码/a/p

/body

/html

这个仿拍拍基本上就是2层放图片,但用起来的效果还是可以的,如果不喜欢我还有下面呢,慢慢学,总会看懂的 (最重要的还是Css哦)

这个主要就是让层实现隐藏 我觉得这个在层使用方面还是好的

从总体上看,在实现层与层之间的交互,在其代码 我觉得你有必要去认真看下 !

以上是我介绍额度菜单,虽然不是很强大,但是却很使用,而且在J2EE中

菜单基本上是一个假象,都是用层与Css之间的特效做出来的!

学会了层的具体应用,我相信你也可以有自己特色的菜单的

那我祝你好运咯!!加油!!

有一段非常NB的JS代码

首先不说你理解不理解的问题,这段代码本身就写得很烂……

这种css和结构代码混在一起的形式,让人很不舒服,不过为了简便,我也懒得改了。

我改了一下,帮助你理解

div id="demo" style="overflow: hidden; WIDTH: 70px; height: 50px;border:solid 1px #222222" align="center"

tabletr

td id="demo1" style="border:solid 1px red"

aaaaaabbbcccccc

/td

td id="demo2" style="border:solid 1px green" !-- 新加2个style帮助你理解,删除后你就明白了 --

aaaaaabbb!-- 其实这里根本没必要完全一样,因为这里的后半截是否显示取决于demo的宽度,也就是显示区域 --

/td

/tr/table

/div

SCRIPT language="javascript"

function Marquee(){

if(demo1.offsetWidth-demo.scrollLeft=0) //这里把demo2改成demo1,当demo1完全滚出显示区域时,(转下面)

demo.scrollLeft=0 //让内部滚动条(这里是demo1,demo2)回归原位,造成连续滚动假象

else{

demo.scrollLeft++ //让demo的内部滚动条继续向左滚动1px

}

}

var MyMar=setInterval(Marquee,5)

demo.onmouseover=function() {clearInterval(MyMar)} //当鼠标放在div元素上面时,清除下面的定时执行功能

demo.onmouseout=function() {MyMar=setInterval(Marquee,5)} //每5毫秒执行一次函数,也就是每5秒滚动1px

/SCRIPT

js编写的小游戏有哪些

有是有,但并不是很多,而且都是贪吃蛇之类的,非常小的游戏,即便是页游也一样。

能运行在浏览器端的语言,确实只有JS,但在开发阶段,却并不一定要使用JS写。而是用其他语言写,直接使用JS写游戏,实在太自虐了。

JS本身的缺点非常严重,如果只是写DOM的话,其实并没什么感觉,因为代码量太少。

但如果写类似游戏这种复杂逻辑,代码量一变大,瞬间就令人崩溃了。弱类型,回调地狱问题,即便将来版本更新到ES10,也不可能完全解决。

如果你看过一个游戏项目的JS源码,你会发现一个非常恐怖的现象。在代码的最底部,有几百个,甚至几千个大括号。。。。所有大型程序的JS源码,拉到最底部,大概都是长这个样子的:

} } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } }.Listen(127.0.0.1) } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } }

大括号的数量还必须绝对精准,少一个,或者多一个,都无法正常运行。。。这就是平时所说的回调地狱。由于JS项目总是函数里面套函数,层层相套,这叫做回调函数。层数一多,就算你是N年的老手,也照样懵比。。。。

所有的游戏项目,都比网页特效的代码量要多的多。。。比如写一个斗地主,就需要4,5万行的JS代码。。。。。最底部的大括号数量,轻松上千。。。。

弱类型的缺陷更严重,但由于解释起来篇幅会很长,所以这里就不提了。

所以为了避开JS本身太多的语法缺陷,一般游戏项目,都是使用其他语言编写,最后再通过一些手段,编译成JS。。。就如同你用一般编程语言编写,最终运行的时候,只有1和0的道理一样。。。在制作页游的时候,一般都是用强类型语言编写,最后开发完成之后,把那些强类型语言编写的代码,通过一些手段“转换”成JS代码。

“转换”成JS代码的方法有很多,其中在游戏行业比较主流的,一共有三种:

1,ActionScript语言,简称AS语言。也就是当年FLASH使用的那个语言。。。当年也曾辉煌过,后来随着FLASH的没落而逐渐没落。。。但有很多H5游戏引擎,也同样使用AS语言。比如LayaAir引擎等。

2,TypeScript语言,简称TS语言。由微软出品,微软和谷歌共同维护的一门完全符合ECMA标准的语言,可以视作JS的超集。超集这个概念怎么理解呢?就是“所有的JS语言,同时也是TS语言,而TS比今天的JS,更像未来的JS”。就比如目前的JS版本只出到了ES6或ES7。那么ES10是啥样?现在并没人见过,连ECMA组织也不知道。。。但有一点可以确定的是,它和TypeScript长的很像。而TS是包含JS的。换言之,JS本身也可以视作是TS的一部分。只是TS里的内容要远比JS多的多。这语言主要有两种用法,一是像AS语言一样结合游戏引擎,比如cocos creator,白鹭等引擎都支持。还有一种用法就是。。。结合Three.JS之类的库,完全按照JS本身的用法去使用。

3,C#语言。虽然JS得名字里面带个Java。但和它长的最像的语言,却并不是JAVA,而是C#。简单说就是:“JS的名字和JAVA有多像,语法就和C#有多像”。所以C#也比较容易转换成JS。但这并不是重点,重点是有一个超级牛的游戏引擎,是使用C#作为开发语言的。就是大名鼎鼎的Unity3D。Unity3D可以直接把C#编写的游戏项目,虚拟现实项目等,编译发布到WebGL。

(责任编辑:IT教学网)

更多

推荐其他WEB语言文章