Html5 canvas 对象内的鼠标悬停和鼠标向下
你好,对不起,我的英语不好。我创建了一个循环“for”的对象,大约有200个对象在一个带有mouseover和mouseout的动态图像中。问题是,所有的物体都是好的,有了图像,问题是更多的东西不能很好地移动,我不知道为什么。不,给我一个javascript错误,只有一个警告图书馆。如果有任何人可以用鼠标检查一组有图像的对象Html5 canvas 对象内的鼠标悬停和鼠标向下,html5-canvas,kineticjs,Html5 Canvas,Kineticjs,你好,对不起,我的英语不好。我创建了一个循环“for”的对象,大约有200个对象在一个带有mouseover和mouseout的动态图像中。问题是,所有的物体都是好的,有了图像,问题是更多的东西不能很好地移动,我不知道为什么。不,给我一个javascript错误,只有一个警告图书馆。如果有任何人可以用鼠标检查一组有图像的对象 CREATE OBJECTS---> for (var j=0;j<datos.length;j++){ // iconos[j]= new ico
CREATE OBJECTS--->
for (var j=0;j<datos.length;j++){ //
iconos[j]= new icono(images._icono,1, datos[j] ,_conv_lat,_conv_long,factor_conversion_mapa,ConvLat,ConvLong,layer_iconos,stage,j,etiquetas);
FUNCTION --->
function icono(icono_mapa,tipo,datos,_conv_lat,_conv_long,factor_conversion_mapa,ConvLat,ConvLong,layer_icono,stage,i,etiquetas){
// DEL PIXEL 679 VA EN NEGATIVO ESTE VALOR (IBIZA-CORUÑA) //Pixel /Grado
//this._conv_lat=_conv_lat;
this.num=i;
// DEL PIXEL 241 VA EN POSITIVO ESTE VALOR
//this._conv_long=_conv_long;
//this.factor_conversion_mapa= factor_conversion_mapa;
this.Datos= new Array();
this.Datos= datos.slice();
this.imagen=icono_mapa;
this.Lat=0;
this.Long=0;
this.ConvLat=ConvLat;
this.ConvLong=ConvLong;
var _this = this;
.
.
.
.
.
this.base = new Kinetic.Image({x: _this.Long-( _this.size/2.0), y: _this.Lat -(this.size/2.0)+5, image:_this.imagen, width: _this.size, height: _this.size , name: "icono_"+_this.num});
this.base.on('mouseover', function(evt) {
document.body.style.cursor = 'pointer';
etiquetas[_this.num].labelLeft.setAttr('opacity',1);
layer_etiquetas.draw();
evt.cancelBubble = true;
});
this.base.on('mouseout', function(evt) {
document.body.style.cursor = 'default';
etiquetas[_this.num].labelLeft.setAttr('opacity',0);
layer_icono.draw();
evt.cancelBubble = true;
});
创建对象-->
对于(var j=0;j
函数icono(icono\u mapa、tipo、datos、\u conv\u lat、\u conv\u long、因子转换\u mapa、ConvLat、ConvLong、layer\u icono、stage、i、etiquetas){
//DEL PIXEL 679 VA EN Negatio ESTE VALOR(IBIZA-CORUñA)//像素/梯度
//这个;
这个.num=i;
//DEL PIXEL 241 VA正电压
//这个。_conv_long=_conv_long;
//这个。factor_conversion_mapa=factor_conversion_mapa;
this.Datos=新数组();
this.Datos=Datos.slice();
this.imagen=icono\u mapa;
这个。Lat=0;
这个。Long=0;
this.ConvLat=ConvLat;
this.ConvLong=ConvLong;
var_this=这个;
.
.
.
.
.
this.base=new dynamic.Image({x:_this.Long-(_this.size/2.0),y:_this.Lat-(this.size/2.0)+5,Image:_this.imagen,width:_this.size,height:_this.size,name:“icono”+_this.num});
this.base.on('mouseover',函数(evt){
document.body.style.cursor='pointer';
etiquetas[_this.num].labelLeft.setAttr('opacity',1);
layer_etiquetas.draw();
evt.cancelBubble=真;
});
this.base.on('mouseout',函数(evt){
document.body.style.cursor='default';
etiquetas[\u this.num].labelLeft.setAttr('opacity',0);
图层图标绘制();
evt.cancelBubble=真;
});
多谢各位
如果有人能帮助我。谢谢
我忽略了一些东西,因为代码更大了,但这不是问题所在。我也找到了解决方案来加速重画,并在这一刻很好地工作
只有一个工具提示对象,移动到该位置,鼠标指针不是鼠标指针
var base = new Kinetic.Image({x:Long-( size/2.0), y:Lat -(size/2.0)+5, image:imagen, width:size, height:size , name: "icono_"+num});
base.on('mouseenter mousemove', function(evt) {
document.body.style.cursor = 'pointer';
tooltip.setPosition(this.getX()+this.getWidth(), this.getY()+this.getHeight()/2);
tooltip.setVisible(true);
tooltip.getText().setText(Datos[4]);
//tooltip.getText()setText(0,Datos[4]);
tooltip.moveToTop();
layer.draw();
});
base.on('mouseout', function(evt) {
document.body.style.cursor = 'default';
tooltip.setVisible(false);
layer.draw();
});