Jquery при вводе с сенсорного экрана найти текущий ввод - PullRequest
0 голосов
/ 12 января 2020

У меня есть пользовательская клавиша и нажатие клавиши, чтобы нажать текущую клавишу, но она не работает на сенсорном экране.

Я подумал, что мне нужно использовать .on('input'), но как мне получить этот ввод?

Другими словами. Мне нужно, чтобы это работало на сенсорном экране:

$('#newtags').keypress(function(e){ 
  if (e.which==13 || e.which==32 || e.which==188){ 
    Do something
  }
});

ОБНОВЛЕНИЕ: Спасибо за ваш вклад. Я использовал метод, где я проверяю последний символ поля ввода и удаляю последний символ при запуске функции:

$('#newtags').on('keyup', function(e){
  var valueofinput= $(this).val();
  var lastcharofinput = valueofinput.substr(valueofinput.length - 1);

  if (e.which==13 || e.which==32 || e.which==188 || e.which==190 || lastcharofinput==' ' || lastcharofinput==',' || lastcharofinput=='.'){
    if (lastcharofinput==' ' || lastcharofinput==',' || lastcharofinput=='.'){
      valueofinput = valueofinput.substr(0, valueofinput.length - 1);
    }
  }
});

1 Ответ

0 голосов
/ 12 января 2020

Как и ваш вопрос, можно просмотреть следующее: События keyup, keydown и keypress не работают на мобильном телефоне

$('#newtags').on('keydown', function(e){ 
  switch(e.which){
    case 13:
      console.log("Enter Pressed.");
      break;
    case 32:
      console.log("Space Pressed.");
      break;
    case 188:
      console.log("Dash Pressed.");
      break;
  }
});

Вы также можете использовать if(), switch() может быть полезным для нескольких сцен ios.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...