【问题标题】:Disable iOS double tap spacebar from browser从浏览器禁用 iOS 双击空格键
【发布时间】:2014-01-22 04:45:58
【问题描述】:

在 iOS 中,有一个原生功能,当用户双击空格键并且输入字段中已有内容时,它会用句号和空格替换应该是双空格的内容。

当字段更改时,我正在使用 Angular 和 ng-change 检查无效字符。

我的问题是 - 从浏览器的角度来看,有什么方法可以禁用此功能?如果没有 - 是否有任何技巧/方法可以替换句号和空格,因为目前,当我双击空格键时,它似乎不会触发绑定到 ng-change 的功能。

【问题讨论】:

标签: javascript ios angularjs mobile safari


【解决方案1】:

这行得通。

var prevTime = 0, prevKey = 0;
document.querySelector("input").addEventListener("keyup", function (e) {
    if (Date.now() - prevTime < 1000 && prevKey == 32 && e.keyCode == 32) {
        var txt = this.value.split("");
        if (txt[txt.length - 2] == ".") {
            txt[txt.length - 2] = " ";
            this.value = txt.join("");
        }
    }
    prevTime = Date.now(); prevKey = e.keyCode;
});

http://jsfiddle.net/DerekL/YKz4N/

【讨论】:

    猜你喜欢
    • 2011-02-04
    • 2020-11-11
    • 1970-01-01
    • 2014-06-22
    • 1970-01-01
    • 2013-04-04
    • 1970-01-01
    • 2012-05-23
    相关资源
    最近更新 更多