【问题标题】:How do I make onclick event skip to offclick?如何使 onclick 事件跳到 offclick?
【发布时间】:2015-07-21 20:47:18
【问题描述】:

我正在为触摸屏计算机制作虚拟键盘。我只使用 angular、html 和 css。如何做到这一点,当我触摸一个键时,即使我按住键,点击也会强制“抬起鼠标”。

我问这个的原因是因为在 500ms-1000ms 内触摸 2 个字符时,它最终没有注册点击。

如果您对提高触摸屏可用性有任何建议,请随时发表评论:)

【问题讨论】:

    标签: javascript css angularjs touchscreen


    【解决方案1】:

    在触控设备上打开此演示进行测试:http://jsbin.com/nibohe/4/

    要获得原生应用的感觉(触摸/鼠标)UX:

    $keybKeyElement.on("touchstart mousedown", function( event ){
        event.preventDefault();
        // Capture the key
        // Send character to textarea
        // other stuff
    });
    

    如果您只在触摸屏上使用 click 事件,则必须

    • 等待用户约 300 多毫秒的 向上 移动
    • 浏览器延迟约 400 毫秒,使其成为有效的点击事件。

    touchstart end event.preventDefault 将终止clickmousedown 或桌面(非/触摸)机器上使用的其他事件。

    【讨论】:

      【解决方案2】:

      您可以尝试使用onmouseup 而不是onclick

      【讨论】:

      • 这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post
      • 他要求一种方法在鼠标按钮出现时让动作发生。这就是onmouseup 所做的。我不明白这不是一个答案。这个问题并没有说明他是否尝试过onmouseup,所以我提出了建议。我需要在答案中提供链接以进行澄清还是需要添加更多解释?我想知道,这样我以后可以更好地回答。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-07
      • 2011-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-03
      相关资源
      最近更新 更多