频道栏目
首页 > 资讯 > HTML/CSS > 正文

元素从失去焦点到其他元素被点击期间的事件

17-08-28        来源:[db:作者]  
收藏   我要投稿

元素从失去焦点到其他元素被点击期间的事件,假设我们正在填写一张表单,输入完文本内容后,点击提交按钮;那么在这期间,对于这两个表单元素来说都发生了哪些事件呢?

<input onblur="inputBlur()" onchange="inputChange()" type="text" /><button onclick="btnClick()" onmousedown="btnMouseDown()" onmouseup="btnMouseUp()">OK</button><script>
        //input失去焦点
        function inputBlur(){
            console.log("input blur");
        }
        //input值变化
        function inputChange(){
            console.log("input change");
        }
        //按钮click事件
        function btnClick(){
            console.log("btn click");
        }
        //按钮mousedown事件
        function btnMouseDown(){
            console.log("btn mousedown");
        }
        //按钮mouseup事件
        function btnMouseUp(){
            console.log("btn mouseup");
        }
    </script>

效果图:
这里写图片描述

从输出可以看出blur事件并不总是首先发生的,可能与我的认知不一样。。但是正因如此才可以使用mousedown事件来保证在点击按钮的时候先执行按钮事件函数而不是执行输入框的blur响应函数。

注:
onchange事件触发条件为输入框值改变且失去焦点(但是非IE浏览器中,在元素输入状态下按回车也会触发onchange事件)
click事件的执行顺序为mousedown -> mouseup -> click
dblclick事件的执行顺序为mousedown -> mouseup -> click -> mousedown -> mouseup -> click -> dblclick

相关TAG标签
上一篇:HTML5中Audio对象volume属性的应用
下一篇:css---前端如何用css代码写省略号,单行省略号,多行省略号?
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站