用JavaScript控制自動喚起輸入法鍵盤
阿新 • • 發佈:2019-01-28
該效果適用於登入頁,註冊使用者頁,獲取驗證碼頁的初始化事件裡,可以實現剛一進頁面時自動喚起輸入法
鍵盤,用來改善使用者體驗,剛剛親測,效果顯著,先記錄一下。
//定義開啟輸入法鍵盤(也稱軟鍵盤)
function open_soft_keyboard(options){
if(plus.os.name == 'iOS'){setTimeout(function(){
var wv_current = plus.webview.currentWebview().nativeInstanceObject();
wv_current.plusCallMethod({"setKeyboardDisplayRequiresUserAction":false});
document.querySelector(options['input']).focus();
}, 330);
}else{
// 因為安卓autofocus只有4.0版本以上才支援,所以這裡使用native.js來強制彈出
setTimeout(function(){
// 在執行的時候需要讓當前webview獲取焦點
var wv_current = plus.android.currentWebview();
plus.android.importClass(wv_current);
wv_current.requestFocus();
var Context = plus.android.importClass("android.content.Context");
var InputMethodManager = plus.android.importClass("android.view.inputmethod.InputMethodManager");
var main = plus.android.runtimeMainActivity();
var imm = main.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0,InputMethodManager.SHOW_FORCED);
document.querySelector(options['input']).focus();
}, 330);
}
}
呼叫方式:函式名({物件})
open_soft_keyboard({
input: "#txtLogin"
});