按道理來說限制長度就是通過 onpropertychange 或者 oninput 監聽輸入內容,然后多的 用 substr 截取掉就可以了
但是如果使用中文輸入法,在我們敲拼音的時候,虛擬輸入的拼音內容同樣會被
oninput、 onpropertychange 事件監聽得到,這就直接導致我們輸入“好漂亮” 這
3個中文字在敲拼音還沒按確定的時候 會被監聽變成 haopiaoliang 12個字符長度。
demo 地址:www.jackness.org/lab/2015/mobile-oninput/demo0.html
在這里, 我們引入 2個 新的事件監聽 compositionstart, compositionend
compositionstart, compositionend
compositionstart
當瀏覽器有非直接的文字輸入時, compositionstart事件會以同步模式觸發.
compositionend
當瀏覽器是直接的文字輸入時, compositionend會以同步模式觸發.
引入方法后,問題得到解決了,在我們輸入拼音的時候并沒有對我們輸入的內容進行阻擋。