updated 添加链接跳转

This commit is contained in:
mumuy 2022-07-06 19:22:18 +08:00
parent 4ba10c5650
commit 5f0f32818b
2 changed files with 30 additions and 24 deletions

38
game.js
View File

@ -84,19 +84,19 @@ function Game(id,params){
Item.prototype.bind = function(eventType,callback){ Item.prototype.bind = function(eventType,callback){
if(!_events[eventType]){ if(!_events[eventType]){
_events[eventType] = {}; _events[eventType] = {};
$canvas.addEventListener(eventType,function(e){
var position = _.getPosition(e);
_stages[_index].items.forEach(function(item){
if(Math.abs(position.x-item.x)<item.width/2&&Math.abs(position.y-item.y)<item.height/2){
var key = 's'+_index+'i'+item._id;
if(_events[eventType][key]){
_events[eventType][key](e);
}
}
});
e.preventDefault();
});
} }
$canvas.addEventListener(eventType,function(e){
var position = _.getPosition(e);
_stages[_index].items.forEach(function(item){
if(item.x<=position.x&&position.x<=item.x+item.width&&item.y<=position.y&&position.y<=item.y+item.height){
var key = 's'+_index+'i'+item._id;
if(_events[eventType][key]){
_events[eventType][key](e);
}
}
});
e.preventDefault();
});
_events[eventType]['s'+this._stage.index+'i'+this._id] = callback.bind(this); //绑定作用域 _events[eventType]['s'+this._stage.index+'i'+this._id] = callback.bind(this); //绑定作用域
}; };
//地图对象构造器 //地图对象构造器
@ -310,14 +310,14 @@ function Game(id,params){
Stage.prototype.bind = function(eventType,callback){ Stage.prototype.bind = function(eventType,callback){
if(!_events[eventType]){ if(!_events[eventType]){
_events[eventType] = {}; _events[eventType] = {};
window.addEventListener(eventType,function(e){
var key = 's' + _index;
if(_events[eventType][key]){
_events[eventType][key](e);
}
e.preventDefault();
});
} }
window.addEventListener(eventType,function(e){
var key = 's' + _index;
if(_events[eventType][key]){
_events[eventType][key](e);
}
e.preventDefault();
});
_events[eventType]['s'+this.index] = callback.bind(this); //绑定事件作用域 _events[eventType]['s'+this.index] = callback.bind(this); //绑定事件作用域
}; };
//动画开始 //动画开始

View File

@ -561,15 +561,21 @@
}); });
//版权信息 //版权信息
stage.createItem({ stage.createItem({
x:game.width-12, x:game.width-10,
y:game.height-5, y:game.height-5,
draw:function(context){ draw:function(context){
context.font = '14px Helvetica'; var text = '© passer-by.com';
context.textAlign = 'right'; context.font = '14px/20px Helvetica';
context.textBaseline = 'bottom'; context.textAlign = 'left';
context.textBaseline = 'top';
context.fillStyle = '#AAA'; context.fillStyle = '#AAA';
context.fillText('© passer-by.com',this.x,this.y); this.width = context.measureText(text).width;
this.x = game.width-this.width-10;
this.y = game.height-20-5;
context.fillText(text,this.x,this.y);
} }
}).bind('click',function(){
window.open('https://passer-by.com');
}); });
//事件绑定 //事件绑定
stage.bind('keydown',function(e){ stage.bind('keydown',function(e){