JS.DAY18.笔记

109 阅读1分钟

一、表单事件

- 表单验证

  1. form 可以直接给后端提交数据
  2. 不用form --- ajax提交数据给后端

- 表单事件

  1. onsubmit 表单提交事件 form才可以使用此事件
  2. onfocus 获取焦点 表单事件 , window也有 focus也会触发click事件
  3. onblur 失去焦点 表单事件 , window也有
  4. onchange 失去焦点并发生改变
  5. oninput 输入时触发事件

- 表单的两个方法

  1. focus() 获取焦点方法
  2. blur() 失去焦点方法

二、默认事件

- 阻止默认事件

  1. preventDefault()

- 复制粘贴事件

  1. oncopy
  2. onpaste

- 右键菜单事件

  1. oncontextmenu

三、键盘事件

- keyup

  • 键盘抬起 触发一次
        document.onkeyup = function(e){
            var code = e.keyCode || e.which;
            console.log(e.altKey); 
            //是否按压了alt键 辅助键
            // e.altKey 是否按了 alt键 辅助键
            // e.ctrlKey 是否按了ctrl键 辅助键
        }

- keydown

  • 键盘按下去 持续触发

- keypress

  • 按压 = down 也是持续性触发事件 部分功能键不触发(比如上下左右 shift 回车 ctrl alt)

- 键盘事件的键值

  1. key 键值
  2. keyCode 键值对应的ASCII值(都会识别为小写)
  3. 组合键(altKey / shiftKey / ctrlKey)
        document.onkeyup = function (e) {  
            // console.log('up');
            // console.log(e.key);  // e.key  键值
            // console.log(e.keyCode);  // 键值对应的ASCII值 (都会识别为小写)
            // console.log(e.which); // keyCode的兼容写法

            var code = e.keyCode || e.which ;


            // console.log(e.shiftKey);  // 判断是否按了shift键  辅助键
            // console.log(e.altKey);   //  判断是否按了alt键    辅助键
            // console.log(e.ctrlKey);  //  判断是否按了ctrl键   辅助键

            // // ctrl + enter
            if(e.ctrlKey && code === 13) {
                console.log('发送');
            }

        }