Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.11.2022, 11:51
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

textarea возможно ли отслеживать в этом блоке изменения
Вот я могу сделать нужное количество столбцов и рядов. Но если количество символов будет превышать будет появляться прокрутка.
А как сделать что бы когда идет превышение количество символов скрипт поменял добавил нужно количество рядов

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

<textarea name="comment" cols="20" rows="2"></textarea>

<script>
    
</script>

</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 04.11.2022, 13:43
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Сообщение от Сергей Ракипов
добавил нужно количество рядов
рядов? может строк?
Ответить с цитированием
  #3 (permalink)  
Старый 04.11.2022, 14:20
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,501

Увеличить - просто: смотришь что scrollHeight больше чем высота самого блока и увеличиваешь её до нужного значения. А вот ужать обратно - это уже извращаться надо.)
__________________
29375, 35
Ответить с цитированием
  #4 (permalink)  
Старый 04.11.2022, 14:49
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

рони,
да строк я просто так всегда называл ряды, строк
Ответить с цитированием
  #5 (permalink)  
Старый 04.11.2022, 14:51
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

Aetae,
там же не в пикселях строки в значениях cols="20" rows="2" или можно писать в пикселях
Ответить с цитированием
  #6 (permalink)  
Старый 04.11.2022, 16:03
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

textarea auto height
Сергей Ракипов,
по запросу из инета первые варианты ...
<!DOCTYPE html>
<html>

<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
        textarea {
            resize: none;
            overflow: hidden;
            min-height: 24px;
        }
    </style>
    <script>
        function auto_grow(element) {
            element.style.height = "5px";
            element.style.height = (element.scrollHeight) + "px";
        }
    </script>
</head>

<body>
    <textarea oninput="auto_grow(this)" rows="2"></textarea>
</body>

</html>


<!DOCTYPE html>
<html>

<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
        *,
        *::before,
        *::after {
            box-sizing: border-box;
        }

        .input-sizer {
            display: inline-grid;
            position: relative;
            border: solid 1px;
        }

        .input-sizer.stacked {
            align-items: stretch;
        }

        .input-sizer.stacked::after,
        .input-sizer.stacked textarea {
            width: auto;
            min-width: 1em;
            grid-area: 1/2;
            font: inherit;
            padding: 0.25em;
            margin: 0;
            resize: none;
            background: none;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            border: none;
        }


        .input-sizer::after {
            content: attr(data-value) " ";
            visibility: hidden;
            white-space: pre-wrap;
        }

        .input-sizer:focus-within textarea:focus,
            {
            outline: none;
        }
    </style>
</head>

<body>
    <label class="input-sizer stacked">
        <textarea oninput="this.parentNode.dataset.value = this.value" rows="2" placeholder="hi"></textarea>
</label>
</body>

</html>
Ответить с цитированием
  #7 (permalink)  
Старый 04.11.2022, 16:50
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

рони,
Спасибо я просто не знал как спросить у интернета вообще не подумал что там размер может мерися в пикселях.

Спасибо
Ответить с цитированием
  #8 (permalink)  
Старый 04.11.2022, 16:51
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

Все увидел по запросу

textarea auto height
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по textarea stivins Элементы интерфейса 3 05.11.2015 16:59
как в jquery в ajax запросе отслеживать изменения длинны ответа. happy_Mikhail jQuery 3 16.11.2014 14:14
Превью textarea в отдельном блоке Undrew Элементы интерфейса 6 04.10.2013 18:16
Возможно ли получить факт изменения ссылки во фрейме?? NickManager Библиотеки/Тулкиты/Фреймворки 4 18.09.2013 21:46