Edge中未触发Keyup / keypress事件

时间:2019-07-11 12:52:26

标签: javascript dom tinymce

我试图在tinymce(4.7)中弄清楚这一点。当您键入链接然后按空格键时,所有浏览器都会将该链接转换为URL:

http://fiddle.tinymce.com/k5faab/21

但是,在Edge中,您必须使用Enter来执行相同的操作。空格键不会那样做。空格键是否有Edge浏览器特定的命令?我希望所有浏览器都统一。基本上,在Edge中,除非您在键入链接后按Enter,否则自动链接插件不会将链接转换为可点击的URL。如果您不这样做,该链接将保留为文本。

我认为这是对此负责的代码的一部分:

var o, a = /^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|(?:mailto:)?[A-Z0-9._%+\-]+@)(.+)$/i;
return e.settings.autolink_pattern && (a = e.settings.autolink_pattern), e.on("keydown", function(t) {
    if (13 == t.keyCode) return r(e)
}), tinymce.Env.ie ? void e.on("focus", function() {
    if (!o) {
        o = !0;
        try {
            e.execCommand("AutoUrlDetect", !1, !0)
        } catch (e) {}
    }
}) : (e.on("keypress", function(n) {
    if (41 == n.keyCode) return t(e)
}), void e.on("keyup", function(t) {
    if (32 == t.keyCode) return n(e)
}))

PS我将整个代码保存在这里:https://jsfiddle.net/Lhgtdjrf/

0 个答案:

没有答案