+7 (987) 026-06-36
Написать в Telegram

Оставить заявку
stanislav_web

Подключение Яндекс Спеллер для исправления орфографических ошибок в русском, украинском или английском тексте

Подключение Яндекс Спеллер для исправления орфографических ошибок в русском, украинском или английском тексте Объясняю и показываю примеры решений разных задач с которыми сталкивался и сталкиваюсь в процессе работы

Подключение Яндекс Спеллер для исправления орфографических ошибок в русском, украинском или английском тексте

Объясняю и показываю примеры решений разных задач с которыми сталкивался и сталкиваюсь в процессе работы

📅 27 сентября 2023

👁‍🗨 577

🔥 0

<script src="https://yastatic.net/jquery/3.3.1/jquery.min.js"></script>
<input type="text" id="search">
<script>
	$(document).ready(function () {
		// эта функция получает наш результат проверки орфографии
		fix_spell = function (data) {
			data.forEach(function (elem) {
				// она находит наше поле ввода по имени
				$('#search').val(
					// и меняет всё на правильные слова без ошибок
					$('#search').val().replace(
						elem['word'],
						elem['s'][0] || elem['word']
						)
					);
			});
		}
	});
	// обработчик нажатия на клавиши
	document.addEventListener('keydown', function (e) {
		// если нажат пробел или энтер
		if ((e.keyCode == 32) || (e.keyCode == 13)) {
			// делим текст на строки
			var lines = $('#search').val().replace(/\r\n|\n\r|\n|\r/g, "\n").split("\n");
			// и обрабатываем каждую строчку:
			lines.forEach(function (line) {
				if (line.length) {
					// отправляем строку со словами на проверку в Спеллер, результат сразу отправляется в функцию fix_spell
					$.getScript('https://speller.yandex.net/services/spellservice.json/checkText?text=' + line + '&callback=fix_spell');
				}
			});
		}
	});
</script>