退出功能(返回)不起作用

时间:2016-03-03 01:27:32

标签: javascript function return

我有一个textField,我正在尝试验证它的十六进制值。我有一个非常好的验证器here。当用户按下ctr-a时,它应该退出keyup事件功能。我用了返回。

问题是,它没有。当您按ctr-a时,if-statement if ctr-a 是的,但它没有返回,它不会退出函数。它直接进入下一部分 当用户按下ctr-a时,如何退出该功能?

JSFiddle

document.getElementById('textField').addEventListener('keyup', function(e) {
  var keycode = e.keyCode || e.which
    // Allow: tab, home, end, left, up, right, down
  if ([9, 36, 35, 37, 38, 39, 40].indexOf(keycode) !== -1 ||
    // Allow: Ctrl || Command && a, c, x and v
    (!0 === e.ctrlKey || !0 === e.metaKey) && /65|67|88|86/.test(keycode)) {
    if (keycode === 86 && /(^[0-9A-F]{6}$)|(^[0-9A-F]{3}$)/i.test(e.target.value)) {
      console.log('Do Something with valid PASTED Hex Color');
    }
    console.log('Should return after this');
    return;
  }

  if (/^[0-9A-F]{6}$/i.test(e.target.value)) {
    console.log('Do Something with valid Hex Color');
  }
});
<input type="text" id="textField" spellcheck="false" maxlength="6" />

请不要JQuery回答。

0 个答案:

没有答案
相关问题