91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

H5頁面軟鍵盤常見問題

發布時間:2020-07-17 09:28:07 來源:網絡 閱讀:34402 作者:陳安一 欄目:開發技術

一、需求:進入頁面自動聚焦輸入框,并彈出軟鍵盤


實測

1、通過js執行focus(),安卓下只聚焦,出現光標,不彈出軟鍵盤;IOS下連光標都未出現。

2、增加autofocus屬性,結果同上。

3、將代碼放入延遲函數setTimeout 中執行,結果同上。

4、通過button點擊執行focus(),文本框聚焦且彈出軟鍵盤


解決方案:

1、通過點擊屏幕的其他區域,然后觸發input的focus事件,喚起鍵盤:

進入頁面后,給頁面加一層遮罩層,點擊遮罩層時關閉該層并執行focus()。

2、重寫input輸入框及軟鍵盤


二、問題:當輸入信息時彈出軟鍵盤,因手機屏幕有限汪汪會遮住輸入框


解決方案:

scrollIntoViewIfNeeded只在當前元素在視窗的可見范圍內不可見的情況下才滾動瀏覽器窗口或容器元素最終讓當前元素可見。

當虛擬鍵盤彈出的時候,window的resize事件會被觸發。

監聽input元素的focus事件,以及window的resize事件。因為focus事件將在resize事件前觸發。然后通過scrollIntoViewIfNeeded使輸入框可見。


1、監聽input元素的focus事件


var inputs = document.getElementsByTagName("input");
for (var i = 0; i< inputs.length; i++) {
    inputs[i].onclick = function (e) {
        window.setTimeout(function () {
            e.target.scrollIntoViewIfNeeded();
        }, 0);
    }
}



2、監聽window的resize事件


if (/Android/gi.test(navigator.userAgent)) {
    window.addEventListener('resize', function () {
        if (document.activeElement.tagName == 'INPUT' || document.activeElement.tagName == 'TEXTAREA') {
            window.setTimeout(function () {
                document.activeElement.scrollIntoViewIfNeeded();
            }, 0);
        }
    })
}



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

格尔木市| 富顺县| 白城市| 会东县| 绥宁县| 漳州市| 原平市| 平南县| 凉城县| 太康县| 天津市| 随州市| 榆林市| 泗洪县| 竹溪县| 昌宁县| 额敏县| 北川| 界首市| 佛山市| 峨眉山市| 南涧| 青海省| 客服| 沙坪坝区| 芦山县| 桂阳县| 奉贤区| 沧源| 宁明县| 濮阳县| 颍上县| 泽库县| 全南县| 库车县| 冕宁县| 丰县| 龙门县| 哈密市| 海城市| 桂阳县|