Как написать скрипт сокращения слов, но при этом чтобы слова не обрубал?
Как написать такой скрипт, чтобы например, нужно ограничить текст в 100 знаков, но если просто например ограничивать, то может обрубить слово, нужно сделать так, чтобы слово это не обрубалось, а дописывалось до его конца, то есть до пробела и потом ставилось многоточие.
Например: Сегодня хороший день.
Например, нужно сократить до 12 знаков, как не должно получится: Сегодня хоро...
Например, нужно сократить до 12 знаков, как должно получится: Сегодня хороший...
Надеюсь я сильно не нафантазировал, вроде на PHP так можно сделать, а на JS?
Алгоритм таков:
- обрезаем исходную строку от length до конца;
- в получившейся строке ищем ближайший пробел;
- обрезаем исходную строку до этого пробела.
Это был прототип, для использования его нужно поправить под свои нужды. Я же не знаю какой текст и из какого блока вам нужно обрезать и на сколько символов.
Я вам дал ссылку, скрипт работает. Если при переносе на ваш сервер он не работает - какой вывод? Правильно, вы что-то делаете не так. Я же не могу гадать, ссылку или код в студию.
Ну так в консоль посмотреть что мешало? Там пишется ошибка:
Uncaught TypeError: Cannot read property 'innerHTML' of null
А все потому, что вы разместили скрипт ДО объявления блока, в момент выполнения скрипта блока еще нет в потоке. Помешать скрипты нужно перед закрывающим body, в данном случае еще и сам вызов функции можно поместить в window.onload