解決iOS下無法觸發(fā)focus事件的問題
前提
我的思路需要在點擊事件之后,先讓一個input元素失去焦點,再讓另一個input 元素獲取到焦點,代碼如下:
$('#xd_content .tabcontent .nav').on('click', function () { $('#xd_content ').blur(); setTimeout(function () { $('#search .shop-search-ipt').focus(); }, 400); });
發(fā)現(xiàn)安卓穩(wěn)定出現(xiàn)小鍵盤,但是ios不觸發(fā)鍵盤。找了半天,發(fā)現(xiàn)是setTimeout的問題,所以我只能 考慮 把 $('#search .shop-search-ipt').focus(); 寫在外面,不使用setTimeout.
后來我測試單獨寫一個頁面剛進(jìn)來,執(zhí)行獲取焦點的方法,ios依然沒有成功。
(function(){ $('#input_box').focus(); })();
我又想:
(function(){ $('#button').on('click',function(){ setTimeout(function(){ $('#button2').trigger('click'); },4000) }) $('#button2').on('click',function(){ alert('觸發(fā)'); $('#input_box').focus(); }) })();
既然點擊事件,之后不能使用settimeout那么我,trigger一個點擊事件,在另一個事件里面出發(fā)獲取焦點就可以了,結(jié)果發(fā)現(xiàn)還是不行。
想要觸發(fā)鍵盤,只能是用戶手動的選擇事件 才能彈出鍵盤。網(wǎng)上說這是ios的安全機制。我也沒有進(jìn)一步研究為什么會這樣,但是就事實來說,應(yīng)該避免setTimeout,或者用戶不是直接操作的方法來獲取 input 焦點。
希望以后能找到合適的解決辦法。
以上這篇解決iOS下無法觸發(fā)focus事件的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
IOS UIImagePickerController從拍照、圖庫、相冊獲取圖片
這篇文章主要介紹了IOS UIImagePickerController從拍照、圖庫、相冊獲取圖片的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下2017-09-09iOS MRC 下 block 循環(huán)引用問題實例講解
本文通過文字說明加代碼的形式給大家介紹了iOS MRC 下 block 循環(huán)引用問題,非常不錯,具有參考借鑒價值,需要的朋友參考下吧2017-12-12使用SDLocalize實現(xiàn)高效完成iOS多語言工作
這篇文章主要介紹了使用SDLocalize實現(xiàn)高效完成iOS多語言工作的相關(guān)資料,需要的朋友可以參考下2022-10-10iOS之UITableView計時器的實現(xiàn)方式總結(jié)(NSTimer、DispatchSource、CADisplayLi
這篇文章主要給大家介紹了關(guān)于iOS之UITableView計時器的實現(xiàn)方式,其中包括NSTimer、DispatchSource、CADisplayLink等方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-12-12iOS中的UITableView的重用機制與加載優(yōu)化詳解
本篇文章主要介紹了iOS中的UITableView的重用機制與加載優(yōu)化詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02