Адаптивный js show more

148
14 октября 2019, 11:10

Имеется много стандартных решений show more на javascript, но все (или почти все) из них подразумевают статичную высоту и ширину скрываемого текста. Как лучшим образом организовать функциональность, которая бы отвечала ряду требований:

  1. скрывать текст до указанного количества строк;
  2. адаптироваться, поддерживая указанное количество строк при увеличении ширины экрана и полностью исчезая (кнопка show more) при условии, что количество ранее указанных строк равно или больше текущей высоты текста?

Задача решаема, вычислить высоту исходного текста, учесть отступы между параграфами, умножить на высоту текста, получить высоту указанного количества строк и привязать событие к resize окна. Но это порождает постоянных слушателей события и вынуждает создать еще один метод, который надо вызывать всякий раз, после изменения содержимого текста (пересчет высоты). Можно ли найти более элегантный и простой способ, в том числе, используя стили, чтобы избавиться отслеживания изменения ширины окна и/или изменения высоты содержимого текста?

READ ALSO
404 ошибка при запросе к api в android приложении

404 ошибка при запросе к api в android приложении

Настраиваю api для своего приложения которое создаю на vue js и потом монтирую через cordova в apk и ipaСоздал для теста на удаленном сайте php файл обработчик...

154
Нужно увидеть какие связи в бд

Нужно увидеть какие связи в бд

Нужно увидеть какие связи в бд, экспортирована в SQL с помощью браузера БД для SQLite, после этого запустил ее в workbanch и не могу найти как включить...

125
Два блока <div> рядом в HTML в Qt 5.5

Два блока <div> рядом в HTML в Qt 5.5

Использую метод setHtml() класса QTextDocumentХочу, чтобы 2 блока отрисовывались рядом

148