Я не знаю ни одной встроенной функции jQuery из javascript для этого.Вы можете, однако, сделать это самостоятельно, но это будет потенциально медленно, если у вас много текста.
Теоретически вы можете убедиться, что для высоты задано значение auto, удалить текст, а затем слово за словом вставьте его заново.При изменении высоты вы удаляете последнее слово и вставляете элемент dom.Опять же, это будет медленно, если текста много, и лучший способ сделать это - не менять исходный элемент, а сделать это в другом элементе, который может быть скрыт, а затем заменить исходный элемент по завершении.Таким образом, ваш пользователь не увидит исчезновения контента и затем вернется к нему слово за словом.
Другой способ - использовать аналогичный принцип и начать с пустого элемента того же размера с помощью параметра height auto,и вставьте новый символ и пробел, пока не получите новую строку.Оттуда вы можете использовать это как приближение к описанному выше методу, или вы можете слепо складывать длину каждой строки, пока не найдете новую строку, принимая во внимание ширину вашего элемента dom.Этот метод работает лучше с моноширинными шрифтами, хотя использование его только в качестве приблизительного значения.
Тем не менее, есть способ измерить текст, используя холст, но это может быть крайне.Теоретически это может быть создание элемента canvas, получение контекста, установка всех свойств шрифта, а затем использование метода context.measureText()
.Пример его использования можно найти здесь .