HTML5.0画布文本框

3

我想要绘制一个登录界面,因此需要绘制用于输入的文本框和提交的按钮!如果使用input和button标签来实现,那很容易!但是我被要求在html5.0中使用canvas来绘制它们。我已经在谷歌上搜索了两天,但仍然没有找到好的方法!有经验的人可以帮帮我吗?谢谢提前!


1
使用HTML元素创建登录界面,用CSS进行样式设计。Canvas不适合此情况。 - hendry
3个回答

16

我非常建议使用HTML元素来实现这一功能。您可以使用CSS定位将它们覆盖在画布上,从而似乎它们是画布本身所绘制的一部分。

仅使用画布来创建此内容非常具有挑战性。

首先,您需要创建绘制输入框和按钮的例程。然后,您需要编写例程以绘制它们处于不同状态时的外观,例如按下按钮的状态。您还需要编写代码来处理在文本框中显示插入符号,处理用户键入的字符,添加代码以处理键事件以生成键,处理复制粘贴键组合、箭头键和单击文本的不同部分以移动光标等等...

还有许多其他事情要做。

真的。请使用HTML输入元素。根据您的问题,这是最好的选择。


1

如果你想要以专业或实际的目的来做这个,我同意你应该使用HTML,并使用绝对定位和透明背景将其覆盖在画布上。

然而,如果你只是把这个当作一个挑战,那么就像Jani说的那样,你需要为文本字段、光标和按钮编写例程。然后,编写一个函数,在按下键时触发onKeydown事件,并检查所按键的键码。然后在框中绘制相应的字母(Unicode在画布中是否有效?)。你还可以处理箭头键和回车键。确保在用户应该输入时不会选中其他元素或浏览器元素。

祝你好运 :)


0
你想在一个什么上面绘制登录界面?我不太清楚为什么你不使用常规图形,但是这里有一个关于如何使用画布标签的基础知识以及你可以做什么的教程

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接