返回顶部
首页 > 资讯 > 精选 >Html5页面上怎么禁止手机虚拟键盘弹出
  • 255
分享到

Html5页面上怎么禁止手机虚拟键盘弹出

2023-06-09 11:06:46 255人浏览 安东尼
摘要

这篇文章主要介绍了HTML5页面上怎么禁止手机虚拟键盘弹出,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。工作中遇到如下需求,点击输入框弹出自定义弹窗,输入框是input标签:

这篇文章主要介绍了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以达到没有聚焦的样子、、、感觉绕了。

优点:支持AndroidioS
缺点:需要添加额外的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页面上怎么禁止手机虚拟键盘弹出”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: Html5页面上怎么禁止手机虚拟键盘弹出

本文链接: https://lsjlt.com/news/255790.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Html5页面上怎么禁止手机虚拟键盘弹出
    这篇文章主要介绍了Html5页面上怎么禁止手机虚拟键盘弹出,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。工作中遇到如下需求,点击输入框弹出自定义弹窗,输入框是input标签:...
    99+
    2023-06-09
  • Android进入Activity时怎么禁止弹出软键盘输入法
    本文小编为大家详细介绍“Android进入Activity时怎么禁止弹出软键盘输入法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Android进入Activity时怎么禁止弹出软键盘输入法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢...
    99+
    2023-06-30
  • HTML5虚拟键盘出现挡住输入框怎么办
    这篇文章将为大家详细讲解有关HTML5虚拟键盘出现挡住输入框怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。代码://防止键盘把当前输入框给挡住 $$('in...
    99+
    2024-04-02
  • HTML5对手机页面长按会粘贴复制禁用怎么办
    小编给大家分享一下HTML5对手机页面长按会粘贴复制禁用怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!解决方法如下所示:&...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作