fabric.js 中 itext 的最大长度 属性
maxlength property for itext in fabric.js
使用 fabric.js 库的 itext 是否有最大长度 属性?如果不是,人们将如何编写一个与 html/javascript 最大长度 属性 一样流畅和一致的代码?我一直在研究一个,但它不像 maxlength 属性 那样流畅。我的问题是它会添加字符然后删除它,所以用户可以看到它发生......不像 maxlength 属性 它只是停止输入。
您可以在文本对象 editing:entered
事件上将 maxlength
添加到 hiddenTextarea
。
const canvas = new fabric.Canvas('c');
const text = new fabric.IText('Hello');
text.on('editing:entered', () => {
text.hiddenTextarea.setAttribute('maxlength', 5);
})
canvas.add(text);
canvas {
border: 1px solid #999;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.4.0/fabric.js"></script>
<canvas id="c" width="600" height="600"></canvas>
使用 fabric.js 库的 itext 是否有最大长度 属性?如果不是,人们将如何编写一个与 html/javascript 最大长度 属性 一样流畅和一致的代码?我一直在研究一个,但它不像 maxlength 属性 那样流畅。我的问题是它会添加字符然后删除它,所以用户可以看到它发生......不像 maxlength 属性 它只是停止输入。
您可以在文本对象 editing:entered
事件上将 maxlength
添加到 hiddenTextarea
。
const canvas = new fabric.Canvas('c');
const text = new fabric.IText('Hello');
text.on('editing:entered', () => {
text.hiddenTextarea.setAttribute('maxlength', 5);
})
canvas.add(text);
canvas {
border: 1px solid #999;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.4.0/fabric.js"></script>
<canvas id="c" width="600" height="600"></canvas>