我想说的是我写的真是太差劲了
var onkeydown = function(e){
//alert(two);
//two.flag = 1;
//alert('sdfsf');
var tempobj = two;
var code = e.keyCode;
//alert(code);
if(code == K_W){
}else if(code == K_S){
}else if(code == K_A){
tempobj.flag = 2;
}else if(code == K_D){
//tow.run();
//alert('fun');
tempobj.flag =1;
//alert(two);
}else if(code ==K_J){
//two.stand();
tempobj.flag = 3;
}else if(code == K_SPACE){
tempobj.flag =4;
}
}
var playerTwo = function(){
this.currentImage = new Image();
// this.currentImage.src = "./src/new/d1.png";
this.loc_x = 0;
this.loc_y = 370;
this.stand_src = new Array(4);
this.fight_src = new Array(24);
this.run_src = new Array(6);
this.hit_src = new Array(4);
this.flag = 0;
this.map = Image();
this.drawMap = function(){
map.src = "./2011/9/9src/new/map/map.png"
var temp = 500/95;
var canvas = document.getElementById('main');
var ctx = canvas.getContext('2d');
//for(var i=0;i<temp;i++){
//ctx.save();
//ctx.clearRect(0,0,canvas.width,canvas.height);
// ctx.drawImage(this.map,0,32,95,34,i*95,300,95,34);
// alert('ss');
//}
}
//载入所需要的图像
this.jump =function(){
this.run();
if(this.loc_y == 400){
this.loc_y -= 20;
}else if(this.loc_y == 380){
this.loc_y -= 20;
}else if(this.loc_y == 360){
this.loc_y -=20;
}else if(this.loc_y == 340){
this.loc_y -= 20;
}else if(this.loc_y == 320){
this.loc_y-= 20;
}else {
this.loc_y = 400;
}
}
this.loadImage = function(){
for(var i= 0 ;i<4;i++){
var src = "./src/new/d"
var t = i+1;
src += t;
src+=".png";
this.stand_src[i] = src;
// alert(src);
}
for(var i=0;i<24;i++){
var src = "./src/new/f";
var t = i+1;
src += t;
src +=".png";
this.fight_src[i] = src;
}
for(var i=0;i<6;i++){
var src = "./src/new/r";
var t = i+1;
src += t;
src+=".png";
this.run_src[i] = src;
// alert(src);
}
for(var i=0;i<4;i++){
var src = "./src/new/r";
var t = i+1;
src+=t;
src+=".png";
this.hit_src[i] = src;
}
}
this.run = function(){
this.currentImage.src = this.run_src[0];
}
this.drawRun =function(){
var image = new Image();
if(this.currentImage.src == "file:///F:/html5/newgame/src/new/r1.png"){
image.src = this.run_src[1];
this.currentImage = image;
if(this.flag ==1){
this.loc_x+=10;
}else if(this.flag ==2){
this.loc_x-=10;
}
// alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/r2.png"){
image.src = this.run_src[2];
this.currentImage = image;
if(this.flag ==1){
this.loc_x+=10;
}else if(this.flag ==2){
this.loc_x-=10;
}
//alert(this.currentImage.src);
}else if(this.currentImage.src =="file:///F:/html5/newgame/src/new/r3.png"){
image.src = this.run_src[3];
this.currentImage = image;
if(this.flag ==1){
this.loc_x+=10;
}else if(this.flag ==2){
this.loc_x-=10;
}
// alert(image.src);
// alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/r4.png"){
image.src = this.run_src[4];
this.currentImage = image;
if(this.flag ==1){
this.loc_x+=10;
}else if(this.flag ==2){
this.loc_x-=10;
}
//alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/r5.png"){
image.src = this.run_src[5];
this.currentImage = image;
if(this.flag ==1){
this.loc_x+=10;
}else if(this.flag ==2){
this.loc_x-=10;
}
}else {
image.src = this.run_src[0];
this.currentImage = image;
}
}
this.drawStand = function(){
var image = Image();
// this.loadImage();
// alert('sdf');
if(this.currentImage.src == "file:///F:/html5/newgame/src/new/d1.png"){
image.src = this.stand_src[1];
this.currentImage = image;
// alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/d2.png"){
image.src = this.stand_src[2];
this.currentImage = image;
//alert(this.currentImage.src);
}else if(this.currentImage.src =="file:///F:/html5/newgame/src/new/d3.png"){
image.src = this.stand_src[3];
this.currentImage = image;
// alert(image.src);
// alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/d4.png"){
image.src = this.stand_src[0];
this.currentImage = image;
//alert(this.currentImage.src);
}else {
image.src = this.stand_src[0];
this.currentImage = image;
// alert(this.currentImage.src);
}
}
this.fight = function(){
this.currentImage.src = "./new/f1.png";
}
this.drawFight = function(){
var image = new Image();
if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f1.png"){
image.src = this.fight_src[1];
this.currentImage = image;
// alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f2.png"){
image.src = this.fight_src[2];
this.currentImage = image;
//alert(image.src)
//alert(this.currentImage.src);
}else if(this.currentImage.src =="file:///F:/html5/newgame/src/new/f3.png"){
image.src = this.fight_src[3];
this.currentImage = image;
// alert(image.src);
// alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f4.png"){
image.src = this.fight_src[4];
this.currentImage = image;
//alert(this.currentImage.src);
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f5.png"){
image.src = this.fight_src[5];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f6.png"){
image.src = this.fight_src[6];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f7.png"){
image.src = this.fight_src[7];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f8.png"){
image.src = this.fight_src[8];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f9.png"){
image.src = this.fight_src[9];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f10.png"){
image.src = this.fight_src[10];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f11.png"){
image.src = this.fight_src[11];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f12.png"){
image.src = this.fight_src[12];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f13.png"){
image.src = this.fight_src[13];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f14.png"){
image.src = this.fight_src[14];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f15.png"){
image.src = this.fight_src[15];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f16.png"){
image.src = this.fight_src[16];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f17.png"){
image.src = this.fight_src[17];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f18.png"){
image.src = this.fight_src[18];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f19.png"){
image.src = this.fight_src[19];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f20.png"){
image.src = this.fight_src[20];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f21.png"){
image.src = this.fight_src[21];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f22.png"){
image.src = this.fight_src[22];
this.currentImage = image;
}else if(this.currentImage.src == "file:///F:/html5/newgame/src/new/f23.png"){
image.src = this.fight_src[0];
this.currentImage = image;
}else {
image.src = this.fight_src[0];
this.currentImage = image;
}
}
this.playerInit = function(){
this.loadImage();
//this.
}
this.stand = function(){
this.currentImage.src = this.stand_src[0];
}
this.drawAction = function(){
if(this.flag ==1){
this.drawRun();
}else if(this.flag ==2){
this.drawRun();
}else if (this.flag ==3){
this.drawFight();
}else if(this.flag ==4){
this.jump();
}else if(this.flag == 0) {
this.drawStand();
}
}
this.init = function(){
this.loadImage();
}
this.drawPlayer = function(){
/// alert('sdf');
this.drawAction();
var canvas = document.getElementById("main");
var ctx = canvas.getContext('2d');
//ctx.save();
ctx.clearRect(0,0,canvas.width,canvas.height);
if(this.flag == 3){
ctx.drawImage(this.currentImage,167,172,64,98,this.loc_x,this.loc_y,64,98);
}else if(this.flag ==4){
}else {
ctx.drawImage(this.currentImage,this.loc_x,this.loc_y);
}
//alert(this.currentImage.src);
//this.currentImage.src = 'd2.png';
//alert(this.fight_src);
this.flag = 0;
}
}
//alert(one);
var two = new playerTwo();
var m = new map();
//two.flag =1;
//alert(two);
function main(){
//two.run();
//two.fight();
two.init();
setInterval(function(){
two.drawMap();
two.drawPlayer();},50);
}

感觉js还必须不断加强才行,加油