0
我是编程新手。我正在使用kineticjs.while使用'get'属性来设置所需图层的不透明度。我被抓到了那个错误。javascript:未捕获TypeError:无法读取undefined属性'get'
squareShapesLastRow2.on('click', function()
{
var highlightspots=[31,14,20,1,33,16,24,5,10,23,8,30,11,36,13,27];
a=this;
indexval = highlightspots.indexOf(parseInt(a.attrs.id));
console.log(indexval);
for (var i=0;i<(1+1);i++)
{
if(indexval>=highlightspots.length)
{
indexval=0;
}
indexval++;
}
for (var j=0;j<(4+1);j++)
{
if(indexval<0)
{
indexval=highlightspots.length-1;
}
else if(indexval>=0)
{
var shape = a.highlight_layer.get(highlightspots[indexval])[0];
shape.setOpacity(1);
}
a.highlight_layer.draw();
indexval--;
}
setTimeout(function() {
for (var i = 0; i < highlightspots.length; i++)
{
var shape = a.highlight_layer.get("#high_" + highlightspots[indexval])[0];
shape.setOpacity(.3);
}
a.highlight_layer.draw();},1000);
});
你在哪里定义highlight_layer?在使用它之前,请尝试console.log(a.highlight_layer);如果它未定义,那么您的问题 –
谢谢Mauno V您的有效反馈。我修复了这个错误。问题是与代码中提到的'id'我dint提到高光层 – Luna
正确的方法是:var shape = frenchBet.figure.frenchVariables.highlight_layer.get(“#”+ highlightspots [indexval] +“high “)[0]; – Luna