【问题标题】:Pin / password input (mask), an alternative to letter-spacing / word-spacing or multiple input?密码/密码输入(掩码),替代字母间距/字间距或多重输入?
【发布时间】:2017-03-06 18:54:28
【问题描述】:

对于一个小型的、移动优先的(网络)应用程序,我正在尝试创建一个 pin/密码输入(掩码),类似于:

+---+ +---+ +---+ +---+
| 1 | | 2 | | 3 | | 4 |
+---+ +---+ +---+ +---+

在各种解决方案的实施过程中,用户体验变得不可预知或令人困惑,我希望我能克服这些……下面的选项列出了我遇到的发现,demo: implementation of the three solutions (simplified)

多个输入

  • 无法在移动设备上检测退格(在 keydown / keyup 期间);这使得导航到上一个输入字段,当按下退格键并且该字段为空时,很难实现。
  • 无法使用软键盘上的“双击切换”功能;聚焦(通过用户操作/脚本)到下一个输入会给出一个“跳跃”键盘(无论是结合“双击移位”自动大写打开还是关闭)

字母间距与背景重复线性梯度相结合(均已计算)

  • Letter-spacing 的实现与人们预期的有些不同,字符总是以“letter-spacing”结尾,而不是字符之间有空格。这会导致在到达输入字段的“结尾”时发生水平滚动
  • 删除一个字符,移动整个字符串,而不是“清空”删除的字符

字间距(在每个字符后附加一个空格)和背景重复线性梯度(均已计算)

  • 删除一个字符,移动整个字符串,而不是“清空”删除的字符

所以这个问题有点双重;首先,我可能错过了另一个解决方案(?)其次,对于提到的解决方案,列出的调查结果可以被“反驳”(?)

【问题讨论】:

  • 给我们一些代码来处理,这样我们就不会做你做的完全相同的事情,只是发现它不起作用。宁愿做点什么。
  • @AmericanSlime,已添加代码/演示。

标签: html css input


【解决方案1】:

使用 JQuery 热键进行输入检测:

https://github.com/jeresig/jquery.hotkeys

老实说,JQuery 及其模块似乎可以解决您的大部分问题。

我认为您也可以从这个答案中受益:CSS: Create iOS style Pin Password box

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-05
    • 2020-11-14
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多