我有一些文本,它有一个“link variabletext”形式的类(其中variabletext对每个链接都是唯一的)。我正在尝试设置它,以便当我鼠标悬停文本时,相应的对象使用jQuery改变颜色。
我的所作所为:http://jsfiddle.net/hdJCn/
我正在使用的代码:
<a href="javascript:void(0);" class="link one">One</a>
<a href="javascript:void(0);" class="link two">Two</a>
<a href="javascript:void(0);" class="link three">Three</a>
<div id="container"></div>
var stage = new Kinetic.Stage({
container: 'container'
});
var layer = new Kinetic.Layer();
var onecircle = new Kinetic.Ellipse({
x: 100,
y: 100,
radius: {
x: 50,
y: 50
},
strokeWidth: 1,
stroke: 'black'
});
layer.add(onecircle);
stage.add(layer);
$('.link').mouseover(function () {
var numclass = $(this).attr('class').split(' ')[1];
(numclass + 'circle').setStroke('orange');
});
问题是它说对象没有方法“setStroke”。如果我采用相同的对象名称并对其进行硬编码(所以onecircle.setStroke而不是上面的代码)它可以正常工作。我不知道为什么会这样,到目前为止还不知所措。
答案 0 :(得分:0)
想出来。我不得不将字符串转换为对象:
var obj = eval(numclass+'circle');
然后使用obj.setStroke
....