偶然間發(fā)現(xiàn)的一個小問題,一個登錄功能的小頁面,只需要輸入賬號和密碼用來驗證登錄用,很久才有人發(fā)現(xiàn)這個問題,就是當(dāng)你輸入完賬號點擊輸入密碼的時候,光標(biāo)直接就聚焦在了密碼輸入框當(dāng)中,但是如果你再要從密碼輸入框點擊回到賬號輸入框,重新輸入賬號信息或者修改賬號信息的時候,就會發(fā)現(xiàn),點一下沒得反應(yīng),得再點一下才能聚焦,如下圖
當(dāng)我從輸入密碼框,點擊到輸入工號框的時候,直接失去焦點,無法直接輸入需要再次點擊才能繼續(xù)輸入。
其實代碼中并沒有出問題,只是input框的type選擇出現(xiàn)了差異,導(dǎo)致這一情況的發(fā)生,這里面輸入的工號一般為純數(shù)字,我們的話type就直接用了number的屬性,其實使用number屬性沒有任何問題,這里使用number或者tel都是可以方便用戶直接輸入工號的,但是我之前設(shè)置了number就會出現(xiàn)之前說的這一幕,在密碼框回點到帳號框的時候,需要點兩下,而type設(shè)置成tel的話,直接就可以無縫切換很絲滑,所以沒有特殊要求的話,可以設(shè)置成tel來提高用戶的使用體驗哦
最后說一下type=number和type=tel的區(qū)別吧
在iOS中,input type="tel"和input type="number"是兩種不同的輸入類型,它們有以下區(qū)別:
input type="tel":此輸入類型常用于電話號碼的輸入,鍵盤上會顯示與電話號碼輸入相關(guān)的特殊字符
input type="number":此輸入類型用于數(shù)值的輸入。它會限制用戶只能輸入數(shù)字,并且鍵盤上只顯示數(shù)字鍵盤。
總結(jié)input type="tel"適用于需要輸入電話號碼的場景,而input type="number"適用于需要輸入數(shù)值的場景