gpt4 book ai didi

javascript - JCanvas 文本中的增量整数

转载 作者:行者123 更新时间:2023-11-28 00:37:55 25 4
gpt4 key购买 nike

每次单击矩形时,我都会尝试增加文本值。我究竟做错了什么 ?我不明白,因为对我的 var 的调用在 drawText 中有效,但在 setLayer 中无效。我查看了“setLayer”源代码,它使用“+=”语法,但文本是一个字符串变量,我不想进行字符串连接。

value=1
$('canvas').drawText({
name: 'count',
fillStyle: '#0f0',
x: 20, y: 20,
fontSize: 22,
fontFamily: 'Verdana, sans-serif',
text: value
})
.drawRect({
strokeStyle: '#000',
fillStyle: '#ccc',
x: 20, y: 50,
width: 20,
height: 20,
layer: true,
click: function(layer) {
// Spin
$(this).animateLayer(layer, {
rotate: '+=180'
});
v=parseInt(value);
$(this).setLayer('count',{
text: value+1 // TRYING to increment over here
});
}})

最佳答案

删除并重新创建图层会让 jCanvas 不高兴。更好的解决方案是使用 setLayer(),将当前值解析为数字,递增该值,然后将其传递给方法:

$('canvas').drawText({
layer: true,
name: 'count',
fillStyle: '#0f0',
x: 20, y: 20,
fontSize: 22,
fontFamily: 'Verdana, sans-serif',
text: '1'
})
.drawRect({
strokeStyle: '#000',
fillStyle: '#ccc',
x: 20, y: 50,
width: 20,
height: 20,
layer: true,
click: function(layer) {
var $canvas = $(this),
countLayer = $canvas.getLayer('count');
// Spin
$canvas.animateLayer(layer, {
rotate: '+=180'
});
$canvas.setLayer(countLayer,{
text: parseFloat(countLayer.text) + 1
});
}
});

关于javascript - JCanvas 文本中的增量整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28279885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com