本篇文章為大家帶來了關於微信小程式的相關知識,其中主要介紹了關於小程式中textarea與input的問題總結,這兩個元件單獨只用一個時,是沒有什麼問題的,但是當他們兩個一起出現時,問題就接踵而來,下面一起來看一下,希望對大家有幫助。
【相關學習推薦:小程式學習教學】
微信小程式中,有兩個原生元件textarea和input ,這兩個組件單獨只用一個時,是沒有什麼問題的,但是當他們兩個一起出現時,問題就接踵而來,並且都是些很玄學的問題,我在開發時就遇到了這些玄學的問題,一個簡單的表單填寫頁面,只是為了實現一個手動實現頁面上推的功能,硬是搞了好幾天才弄好!
效果圖:
思考
#在我把這些玄學問題透過特殊方式解決後,我思考了很多很多
為什麼textarea和input組合在一起使用時為什麼會有這些玄學問題?
我明明是正常的寫法,為什麼ios手機可以,到安卓機就不行了?
為什麼有些時候可以有些時候又不行?
...等等等等
為了以後不在這些問題上走彎路,所以我決定好好的去探索一番,textarea與input的相愛相殺
測試機器
這次探索所用到的機器為
安卓機器:榮耀20,小米10s;
ios機器:iPhone13
#玄學問題來了!
1、綁定bindkeyboardheightchange事件
問題:只為textarea綁定bindkeyboardheightchange事件,input也會觸發textarea的bindkeyboardheightchange事件,並且觸發所攜帶的參數都是textarea上面的參數
機型:安卓必現
#範例:
2、設定hold-keyboaed為true時
問題:當把textarea和input的hold-keyboaed屬性設為true時,並且在input中有一個type不為text時,連續切換會把鍵盤上方的完成卡住,並且不會再聚焦textarea機型:安卓必現範例gif:3、textarea穿透問題
#問題:當有fixed元素時,無論設定多少z-index值,textarea元件都會穿透該fixed元素機型:安卓偶現玄學點:有時是不會出現的,但當我重新編譯、掃碼預覽時,就會出現textarea穿透問題,並且之後都會一直出現,但當我把小程式在手機上刪除後,重新編譯掃碼就有幾率不會出現該問題範例gif:4、綁定bindfocus事件
問題:當只給textarea綁定bindfocus事件,進入頁面先點擊textarea後,再馬上點擊input會觸發textarea的focus事件機型:安卓偶現範例gif:5、transition動畫
問題:在鍵盤抬起過程中如果透過bottom或translateY手動抬起page頁面時,並設定了transition動畫屬性,會導致textarea的placeholder閃爍機型:安卓必現範例gif:6、點擊完成時
問題:textarea綁定bindkeyboardheightchange事件,並且使用了自帶的完成時,點擊完成時不會觸發bindkeyboardheightchange事件
機型:安卓偶現
範例gif:
解決方案:未找到解決方案
##7、設定auto-height時
問題:當textarea的auto-height屬性為true時,會導致使用selectComponet取得高度時出現問題,有時是沒有內容的一排初始高度,有時是textarea的預設高度機型:ios與安卓解決方法:動態控制auto-height的值,或使用定時器延遲取得高度8、鍵盤高度獲取不一致
問題:多次觸發bindkeyboardchange事件,從事件中獲取的keyboardHeight高度不一致,有時是帶了完成的高度,有時是沒有帶完成的高度#機型:安卓偶現解決方法:未找到解決方法9、取得資料精確度問題
問題:透過selectComponet取得元素的高寬或位置時,會預設保留全部小數,大概為16位,有幾率導致動畫出現混亂機型:ios與安卓偶現解決方法:js語言本身就有精確度問題,所以透過selectComponent取得資料後,最好只保留兩位小數來進行處【相關學習推薦:小程式學習教學】
以上是微信小程式中textarea與input的問題總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3漢化版
中文版,非常好用

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver CS6
視覺化網頁開發工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

禪工作室 13.0.1
強大的PHP整合開發環境