1. 程式人生 > >中中文輸入時input事件處理

中中文輸入時input事件處理

在input標籤中進行中文輸入時,輸入拼音狀態下尚未確認漢字輸入時,input事件也在不斷的被觸發,如下圖chengxuyuan

如果在input事件中對文字長度進行截斷時,就會發生無法繼續輸入的問題,一種解決方法如下:

$(element).on('input', function() {
                    if($(this).prop('comStart')) return;    // 確保中文拼音輸入過程中不被截斷


                    that.onInputChange();
                }).on('compositionstart', function(){
                    $(this).prop('comStart', true);
                }).on('compositionend', function(){
                    $(this).prop('comStart', false);
                });