亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

Html5頁面上怎么禁止手機虛擬鍵盤彈出

發布時間:2021-04-29 14:13:55 來源:億速云 閱讀:270 作者:小新 欄目:web開發

這篇文章主要介紹了Html5頁面上怎么禁止手機虛擬鍵盤彈出,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

工作中遇到如下需求,點擊輸入框彈出自定義彈窗,輸入框是input標簽:

Html5頁面上怎么禁止手機虛擬鍵盤彈出

但是在移動端,input會默認觸發手機的虛擬鍵盤,如何阻止手機虛擬鍵盤彈起呢?目前我試過有兩個方案,一個是給input添加readonly屬性,另一個就是在input事件處理方法前面添加一句document.activeElement.blur() 。

readonly

使用readonly方式來阻止虛擬鍵盤彈出應該是最簡單最優雅的方式了。readonly 屬性規定輸入字段為只讀。只讀字段是不能修改的。不過,用戶仍然可以使用 tab 鍵切換到該字段,還可以選中或拷貝其文本。

值得一提的是它的取值,只要聲明了readonly屬性,不管取什么值都可以,比如readonly=""、readonly="readonly"、readonly="abc"都是一樣的

優點:簡單
缺點:在iOS的Safari中無效(未做更多情況測試)

document.activeElement.blur()

這是個什么玩意兒?document.activeElement是一個Web API接口。MDN上的解釋是:它返回當前頁面中獲得焦點的元素,也就是說,如果此時用戶按下了鍵盤上某個鍵,會在該元素上觸發鍵盤事件,該屬性是只讀的。

document.activeElement屬性始終會引用DOM中當前獲得了焦點的元素。元素獲得焦點的方式有用戶輸入(通常是按Tab鍵)、在代碼中調用focus()方法和頁面加載。

它里面有很多方法,在瀏覽器控制臺查看,可以看到有很都方法:

Html5頁面上怎么禁止手機虛擬鍵盤彈出

那么document.activeElement.blur()為什么可以阻止虛擬鍵盤彈出呢?原因是:當你點擊input的時候,document.activeElement獲得了DOM中被聚焦的元素,也就是你點擊的input,而調用.blur()方法,blur我相信大家都知道吧,就是取消聚焦。獲得被聚焦的元素然后強制blur以達到沒有聚焦的樣子、、、感覺繞了。

優點:支持Android、iOS
缺點:需要添加額外的JS代碼

這句代碼加在什么地方?加入有如下HTML

<div class="calendar">
    <div>
        <input type="text" id="datePicker" class="date_picker" placeholder="點擊選擇入住日期"/>
    </div>
</div>

那么這句JS加在事件處理方法中

$("#datePicker").focus(function(){
    document.activeElement.blur();
});

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Html5頁面上怎么禁止手機虛擬鍵盤彈出”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

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

AI

民县| 丹凤县| 张家口市| 康保县| 苏尼特左旗| 日土县| 甘泉县| 龙海市| 凤凰县| 普兰店市| 福海县| 玉环县| 晋城| 新宁县| 新巴尔虎左旗| 佛山市| 洞头县| 行唐县| 寿宁县| 米脂县| 新晃| 秦皇岛市| 突泉县| 晋江市| 岳阳县| 东兴市| 武鸣县| 恩平市| 广饶县| 南通市| 浮山县| 昌都县| 红安县| 漳浦县| 府谷县| 敖汉旗| 京山县| 尼勒克县| 涟源市| 泰州市| 芦溪县|