Привет всем! У меня возникла проблема с JavaScript, и я никак не могу ее решить. Мне нужно сделать так, чтобы после ввода слова “in” происходило определенное действие.
Конкретно, я хочу, чтобы скрытый div становился видимым (display:block) сразу после того, как пользователь напечатает “in”. Это должно работать как автоподсказка.
Структура ввода такая: [слово] [in] [слово].
Я пробовал использовать событие onkeyup, но у меня ничего не получается. Может кто-нибудь подсказать, как это правильно реализовать?
Вот пример кода, который я пытался использовать:
function checkInput(input) {
let hiddenDiv = document.getElementById('подсказка');
if (input.value.includes(' in ')) {
hiddenDiv.style.display = 'block';
} else {
hiddenDiv.style.display = 'none';
}
}
Твой подход уже близок к правильному решению. Вместо includes() лучше использовать метод split() и проверять последнее введенное слово. Вот как это можно реализовать:
Этот код будет срабатывать сразу после ввода ‘in’, даже если это не последнее слово в строке. Просто добавь эту функцию к событию input твоего поля ввода.