核心想法:$(this).height(this.scrollheight)
$textarea.addeventlistener('input', function ()
var currentlength = this.scrollheight;
if (lastheight !== currentheight || !this.style.height)
lastlength = currentlength;
lastheight = currentheight;
})
.container
.text
.textarea
/* 統一內容樣式 */
.font-style
摘自[[貝聊科技]不簡單的自適應高度輸入框](所以那段時間瘋狂在網上找解決方法。這是一種方法,但是這個方法是有問題的,如果我們要給輸入的東西加上背景,比如說給textarea加上乙個背景,然後問題就出現了,因為span是行內元素,背景能夠到達的位置是span輸入的內容範圍,如果是內容少還好,內容多就炸了,一行中有一部分是沒有背景顏色的。
.placeholder
#textarea
$textarea.on('input', function () )
這種方法就是把textarea和div的樣式設定成完全一樣,必須完全一樣,然後把div的偏移量設定特別大,但是不能夠設定div為display: none
,這樣我們就獲取不到他的高度了,隨便你怎麼設定,只要隱藏這個東西就好了。
還有一種方法是把div變為可編輯的狀態,但是這種方法一來就被我放棄了,因為要相容多種機型,可能有的機型不相容,而且要輸入的字數,那就炸了,他使用的很少見的domnodeinserted
,這不炸了嘛。
移動端 對高度自適應的輸入框說不
核心想法 this height this.scrollheight textarea.addeventlistener input function var currentlength this.scrollheight if lastheight currentheight this.style...
高度自適應的輸入框
有時候我們需要乙個高度能隨內容自動增加的輸入框,input顯然不行,因為input裡的文字是不換行的。文字域textarea裡的文字倒是換行的,可一旦文字內容超過其高度,textarea就會增加乙個煩人的滾動條,這是很影響視覺的,就如同下面 那麼有沒有辦法製作乙個高度能隨文字內容自動增加的輸入框呢?...
輸入框自適應輸入的內容
我的需求是 每次輸出英文分號 就把輸入框的長度增加。import react,from react import from react const inputdata setinputdata usestate 輸入框的內容 const length setlength usestate 316 初...