textarea文字框高度自適應程式碼例項
預設情況下textarea文字框不能夠實現高度自適應,當輸入的內容超過文字框的高度的時候,就會出現滾動條。
下面通過程式碼例項介紹一下如何利用JavaScript實現文字框隨著內容高度自適應效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #shadow,#text{ font:12px/16px Arial; width:200px; overflow:hidden; height:16px; } #shadow{ position:absolute; border-width:0px; padding:0px; visibility:hidden; } #text{resize:none;} </style> <script type="text/javascript"> window.onload=function(){ //使用者看到的文字框 var text=document.getElementById("text"); //隱藏的文字框 var shadow=document.getElementById("shadow"); text.oninput=text.onpropertychange =onchange; function onchange(){ shadow.value=text.value; setHeight(); //針對IE 6/7/8的延遲, 否則有時會有一個字元的出入 setTimeout(setHeight,0); function setHeight(){ text.style.height=shadow.scrollHeight + "px"; } } }; </script> </head> <body> <textarea id="text"></textarea> <textarea id="shadow"></textarea> </body> </html>
上面的程式碼實現了我們的要求,下面介紹效果的實現過程。
一.程式碼註釋:
(1).window.onload=function(){},當文件內容完全載入完畢再去執行函式中的程式碼。
(2).var text=document.getElementById("text"),獲取id屬性值為text的元素物件。
(3).var shadow=document.getElementById("shadow"),獲取id屬性值為shadow的元素物件。
(4).text.oninput=text.onpropertychange=onchange,註冊事件處理函式。
(5).function onchange(),文字框內值發生改變執行的事件處理函式。
(6).shadow.value=text.value,將顯示的文字框的值賦值給隱藏的文字框。
(7).setHeight(),此函式可以設定顯示的文字框的高度。
(8).setTimeout(setHeight,0),//針對IE 6/7/8的延遲, 否則有時會有一個字元的出入。
(9).function setHeight(){
text.style.height=shadow.scrollHeight + "px";
},將顯示的文字框高度,設定值為隱藏文字框的scrollHeight屬性值。
二.相關閱讀:
(1).oninput參閱JavaScript input 事件一章節。
(2).setTimeout()參閱setTimeout()一章節。
(3).scrollHeight屬性參閱scrollHeight屬性一章節。
相關文章
- jQuery textarea框高度自適應jQuery
- textarea 高度自適應
- textarea文域高度自適應
- textarea高度自適應詳解
- textarea實現高度自適應的理解
- 當前文字框高亮效果程式碼例項
- input文字框寬度自適應
- jQuery點選文字框清除內容程式碼例項jQuery
- 小程式Swiper高度自適應
- Android FixedTextView 字型大小自適應文字框AndroidTextView
- HTML textarea 多行文字框HTML
- 微信小程式Swiper高度自適應微信小程式
- 移動端:對高度自適應的輸入框說不~
- html iframe高度自適應HTML
- iframe 跨域高度自適應跨域
- 微信小程式swiper高度自適應,swiper的子元素高度不固定微信小程式
- 好程式設計師web前端分享高度自適應程式設計師Web前端
- Widget小元件如何自適應高度元件
- iframe自適應高度的外掛
- 自動載入的iframe高度自適應
- 巢狀UITextView的UITableViewCell高度自適應巢狀UITextView
- easyui-layout佈局高度自適應UI
- 微信輪播圖自適應高度
- css多行文字垂直居中程式碼例項CSS
- iOS 精準獲取webView內容高度並自適應高度iOSWebView
- 真正解決iframe高度自適應問題
- React Native踩坑指南:WebView高度自適應React NativeWebView
- CSS3文字凹凸效果程式碼例項CSSS3
- JavaScript讀取文字檔案內容程式碼例項JavaScript
- 響應式佈局程式碼例項
- 直播帶貨原始碼,評論框自動控制高度原始碼
- UITableViewCell含有WebView的自適應高度新解決方案UIWebView
- CSS3文字陰影效果程式碼例項CSSS3
- JavaScript 點選複製選中文字程式碼例項JavaScript
- 短視訊系統原始碼,上傳圖片自適應拉伸符合高度原始碼
- 微信小程式之swiper輪播圖中的圖片自適應高度微信小程式
- dom操作程式碼例項
- css梯形程式碼例項CSS