• Android input输入框 移动页面input手机键盘中的“搜索”按键


    动页面input手机键盘中的“搜索”按键



    满足以下几点机即可:

        input type="search"
        放到form标签中
        使用action属性

    <form action="." >
      <input type='search' />
    </form>



    注意:

    如果只使用input type="search",而不放到form标签中,则显示“换行”;
    如果放到form中,但是使用type="text",则显示“前往”;
    如果放到form中,使用input type="search",但没有action属性,Android不会有问题,但在IOS8以上的系统中,键盘上仍不会显示“搜索”,而是显示“换行”。
    回车事件

    如果页面中不设置“搜索”按钮来触发搜索操作,而是当点击键盘中的“搜索”时就进行搜索操作。可以监听输入框的回车事件。比如在onKeyDown事件监听中,获取事件keyCode,判断是否输入“回车”(keyCode=13),然后再进行相关的搜索操作。
    点击搜索之后页面自动刷新的问题

    因为这个form中只有一个输入框,所以在输入框中输入回车时,页面会自动刷新。要避免此情况,可以在添加一个隐藏的input。

    <form action="." >
      <input id="iptSearch" type='search' />
      <input type="text" style="display:none;"/>
    </form>



    输入框内的小叉X

    type=“search”的输入框在获取到焦点后,默认会出现一个小叉叉,用于清空输入框中的内容,而且样式因浏览器而异。如果想要隐藏这个X,可以使用如下CSS:

    input[type="search"]::-webkit-search-cancel-button{
        -webkit-appearance: none;
    }



    参考阅读:

        Show 'Search' button in iPhone/iPad Safari keyboard:
        https://stackoverflow.com/questions/4864167/show-search-button-in-iphone-ipad-safari-keyboard
        你不知道的input[type=search]: http://blog.csdn.net/xxxxxmiss/article/details/51534626
        HTML Button自动刷新页面的问题: http://blog.csdn.net/jrainbow/article/details/44978843



    作者:Evelynzzz
    链接:https://www.jianshu.com/p/f083f72db7cc
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。



     keyCode 事件属性

    事件对象参考手册 事件对象
    实例

    获取按下的键盘按键Unicode值:
    var x = event.keyCode;

    x 输出结果为:
    119   // 119 是字符 "w"

    尝试一下 »

    本文底部包含了更多实例。
    定义和使用

    keyCode 属性返回onkeypress事件触发的键的值的字符代码,或者 onkeydown 或 onkeyup 事件的键的代码。

    两种代码类型的区别是:

        字符代码 - 表示 ASCII 字符的数字
        键盘代码 - 表示键盘上真实键的数字

    p>两种类型的值不是都相等的,例如小写字符 "w" 和大写字符 "W" 有相同的键盘代码,因为他们他们键盘上 ( "W" 代码为 "87"),但是它们有不同的字符代码,两个字符输出是不一样的( "w" 和 "W" 字符代码为 "119" 和 "87") - 查看以下实例可以更好的理解。

    提示: 如果需要知道用户按下的是打印键 (如 "a" 或 "5"),建议使用 onkeypress 事件。如果需要知道用户按下的是功能键(如 "F1", "CAPS LOCK" 或 "Home") 可使用 onkeydown 或 onkeyup 事件。

    注意: 在 Firefox 中,, keyCode 属性在 onkeypress 事件中是无效的 (返回 0)。浏览器兼容问题,可以一起使用 which 和 keyCode 属性来解决:
    var x = event.which || event.keyCode;  // 使用 which 或 keyCode, 这样可支持不同浏览器

    提示: 所有 Unicode 字符列表可查看我们的 完整 Unicode 参考手册。

    提示: 如果你需要将 Unicode 值转换为字符,可以使用 fromCharCode() 方法。

    注意: 该属性是只读的。

    注意: which 和 keyCode 属性提供了解决浏览器的兼容性的方法,最新版本的 DOM 事件推荐使用 key 属性来替代该方法。

    提示: 如果你想查看是否按下了 "ALT", "CTRL", "META" 或 "SHIFT" 键,可使用 altKey, ctrlKey, metaKey 或 shiftKey 属性。


    语法
    event.keyCode
    技术细节
    返回值:     数字,表示 Unicode 字符代码或 Unicode 键代码
    DOM 版本:     DOM Level 2 Events


    实例

    使用 onkeypress 和 onkeydown 来演示字符代码与键盘代码的区别:

    <input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)">
    
    function uniCharCode(event) {
        var char = event.which || event.keyCode;
        document.getElementById("demo").innerHTML = "Unicode CHARACTER code: " + char;
    }
    
    function uniKeyCode(event) {
        var key = event.keyCode;
        document.getElementById("demo2").innerHTML = "Unicode KEY code: " + key;
    }



    当在键盘上按下 "a" 键 (不使用大写锁定), 输出结果如下:
    Unicode 字符代码: 97
    Unicode 键代码: 65


    实例

    如果按下 Esc 键弹出提示信息:

    <input type="text" onkeydown="myFunction(event)">
    
    function myFunction(event) {
        var x = event.keyCode;
        if (x == 27) {  // 27 是 ESC 键
            alert ("You pressed the Escape key!");
        }
    }




    实例

    将 Unicode 值转换为字符 (不能用于功能键):
    var x = event.keyCode;                // 获取 Unicode 值
    var y = String.fromCharCode(x);       // 将值转换为字符
    [参考](http://www.runoob.com/jsref/event-key-keycode.html)


     js实现主动使input失去焦点

     主要解决在手机端,input输入完成,键盘还是弹出状态。

    var input = document.getElementById("your-input-id");
    input.blur();
  • 相关阅读:
    idea maven 依赖还原不上的问题 method <init>()V not found
    QT6 发布程序
    Latex 公式缩放 Latex scales an equation to fit page width
    oracle使用dba账号查询死锁的表
    利用Vcpkg轻松集成开源第三方库
    python gdal 打包后运行exe Error:cannot find proj.db
    【GDAL】python读取DEM计算坡度与坡向
    docker启动关闭删除所有的容器命令
    用命令行编译libjpeg.lib
    mysql外键说明
  • 原文地址:https://www.cnblogs.com/xiaoshen666/p/10772858.html
Copyright © 2020-2023  润新知