chrome下判断点击input上标签还是其余标签的实现方法


Posted in Javascript onSeptember 18, 2016

想要实现的功能:当input框失焦且点击的不是清除键时,执行reset方法重置input样式,当点击清除键时,执行clear方法,清除input内容。

如图

chrome下判断点击input上标签还是其余标签的实现方法

本想通过如下代码来实现

$(".search-input").focusout(function () {
          if (document.activeElement.className !== 'close-t') {//close-t为清除键类名
            $('.search-input').addClass('search-before');
            $('.close').css('display', 'none');
            
            document.getElementById('search').value = '';
          }
});

以外的发现,当inpu框失焦后,首先获得焦点的,竟是body标签,也因为这样,该方法失效了,最后采用以下代码来实现的该功能

$("#search").focusout(function () {
  //判断失焦后是否点击的是清除钮,若是则不重置
  var tapCloseButton = false;
  $('.close-t').focus(function () {
    tapCloseButton = true;
  });
  setTimeout(function () {
    if (!tapCloseButton) {
      $('.search-input').addClass('search-before');
      $('.close').css('display', 'none');
      document.getElementById('search').value = '';
    }
  },10);
});

将焦点判断这一步骤延迟执行,故此时焦点已经从body上移到了真正所点击的元素上,此时再对焦点进行判断,看是否为清除键。

以上这篇chrome下判断点击input上标签还是其余标签的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
脚本安需导入(装载)的三种模式的对比
Jun 24 Javascript
js原型链原理看图说明
Jul 07 Javascript
node.js WEB开发中图片验证码的实现方法
Jun 03 Javascript
jquery datatable后台封装数据示例代码
Aug 07 Javascript
基于jquery的文字向上跑动类似跑马灯的效果
Sep 22 Javascript
JavaScript语言对Unicode字符集的支持详解
Dec 30 Javascript
原生js结合html5制作小飞龙的简易跳球
Mar 30 Javascript
深入理解jquery自定义动画animate()
May 24 Javascript
jQuery模拟select实现下拉菜单功能
Jun 20 Javascript
利用js的闭包原理做对象封装及调用方法
Apr 07 Javascript
JavaScript this绑定过程深入详解
Dec 07 Javascript
vue制作抓娃娃机的示例代码
Apr 17 Javascript
通过jquery实现页面的动画效果(实例代码)
Sep 18 #Javascript
JQuery实现DIV其他动画效果的简单实例
Sep 18 #Javascript
JQuery遍历元素的后代和同胞实现方法
Sep 18 #Javascript
AngularJS实现树形结构(ztree)菜单示例代码
Sep 18 #Javascript
利用jquery实现瀑布流3种案例
Sep 18 #Javascript
JQuery遍历元素的父辈和祖先的方法
Sep 18 #Javascript
移动端js触摸事件详解
Sep 18 #Javascript
You might like
PHP 编写大型网站问题集
2010/05/07 PHP
在WAMP环境下搭建ZendDebugger php调试工具的方法
2011/07/18 PHP
ThinkPHP实现ajax仿官网搜索功能实例
2014/12/02 PHP
PHP实现登录搜狐广告获取广告联盟数据的方法【附demo源码】
2016/10/14 PHP
通过php动态传数据到highcharts
2017/04/05 PHP
PHP cookie与session会话基本用法实例分析
2019/11/18 PHP
重定向实现代码
2006/11/20 Javascript
javascript form 验证函数 弹出对话框形式
2009/06/23 Javascript
IE event.srcElement和FF event.target 功能比较
2010/03/01 Javascript
JS正则中的RegExp对象对象
2012/11/07 Javascript
JavaScript通过元素索引号删除数组中对应元素的方法
2015/03/18 Javascript
jQuery自定义数值抽奖活动代码
2016/06/11 Javascript
Angularjs实现下拉框联动的示例代码
2017/08/22 Javascript
每天学点Vue源码之vm.$mount挂载函数
2019/03/11 Javascript
javascript实现遮罩层动态效果实例
2019/05/14 Javascript
webpack4手动搭建Vue开发环境实现todoList项目的方法
2019/05/16 Javascript
Javascript组合继承方法代码实例解析
2020/04/02 Javascript
element中的$confirm的使用
2020/04/26 Javascript
Python 检查数组元素是否存在类似PHP isset()方法
2014/10/14 Python
python生成excel的实例代码
2017/11/08 Python
Python语言描述最大连续子序列和
2017/12/05 Python
Python实现合并同一个文件夹下所有PDF文件的方法示例
2018/04/28 Python
Django Sitemap 站点地图的实现方法
2019/04/29 Python
python的移位操作实现详解
2019/08/21 Python
Python 正则表达式爬虫使用案例解析
2019/09/23 Python
关于Python Tkinter Button控件command传参问题的解决方式
2020/03/04 Python
使用python matplotlib 画图导入到word中如何保证分辨率
2020/04/16 Python
Python startswith()和endswith() 方法原理解析
2020/04/28 Python
Python列表如何更新值
2020/05/27 Python
详解python安装matplotlib库三种失败情况
2020/07/28 Python
Python进行特征提取的示例代码
2020/10/15 Python
Python爬取豆瓣数据实现过程解析
2020/10/27 Python
Ratchet 模态框的实现
2020/08/19 HTML / CSS
全球性的奢侈品梦工厂:Forzieri(福喜利)
2019/02/20 全球购物
立案决定书范文
2015/06/24 职场文书
2016婚礼主持词开场白
2015/11/24 职场文书