我想在jquery中使用keyup事件更改容器中的动态js文本但不显示。我尝试获取值然后将其显示在span元素上,它工作正常。 这是我的代码:
var stage = new Kinetic.Stage({
container: 'canvasContainer',
width: 800,
height: 800
});
var layer = new Kinetic.Layer();
var message = '';
$(function(){
$('#txtArea').change(function(){
message = $(this).val();
$('.output').text(message);
var simpleText = new Kinetic.Text({
x: 0,
y: 10,
text: message,
fontSize: 30,
fontFamily: 'Calibri',
fill: 'blue'
});
layer.add(simpleText);
}).keyup(function(){
$(this).change();
});
});
stage.add(layer);
答案 0 :(得分:0)
添加或更改Kinetic对象后,请务必调用layer.draw()以使图形可见。
BTW,您可能只想更改现有文本对象中的文本,而不是在每次更改时添加新的simpleText
// declare simpleText before .change()
var simpleText = new Kinetic.Text({
x: 0,
y: 10,
text: "",
fontSize: 30,
fontFamily: 'Calibri',
fill: 'blue'
});
layer.add(simpleText);
// then inside .change()
simpleText.setText(message);
layer.draw();