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 相关文章推荐
JavaScript 继承详解(四)
Jul 13 Javascript
判断ie的两种简单方法
Aug 12 Javascript
js获取当前页面的url网址信息
Jun 12 Javascript
网站基于flash实现的Banner图切换效果代码
Oct 14 Javascript
jQuery中ajax的get()方法用法实例
Dec 26 Javascript
jQuery实现按键盘方向键翻页特效
Mar 18 Javascript
JS实现的文字与图片定时切换效果代码
Oct 06 Javascript
JavaScript数组操作函数汇总
Aug 05 Javascript
BootStrap CSS全局样式和表格样式源码解析
Jan 20 Javascript
基于vue,vue-router, vuex及addRoutes进行权限控制问题
May 02 Javascript
javascript function(函数类型)使用与注意事项小结
Jun 10 Javascript
Vue触发input选取文件点击事件操作
Aug 07 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 MYSQL 数据备份类
2009/06/19 PHP
解析PHP高效率写法(详解原因)
2013/06/20 PHP
php PDO判断连接是否可用的实现方法
2017/04/03 PHP
PHP实现的获取文件mimes类型工具类示例
2018/04/08 PHP
使用composer 安装 laravel框架的方法图文详解
2019/08/02 PHP
laravel ORM关联关系中的 with和whereHas用法
2019/10/16 PHP
ThinkPHP3.1.2 使用cli命令行模式运行的方法
2020/04/14 PHP
Swoole扩展的6种模式深入详解
2021/03/04 PHP
JavaScript下申明对象的几种方法小结
2008/10/02 Javascript
xheditor与validate插件冲突的解决方案
2010/04/15 Javascript
JS在textarea光标处插入文本的小例子
2013/03/22 Javascript
javascript实现可改变滚动方向的无缝滚动实例
2013/06/17 Javascript
JavaScript前端图片加载管理器imagepool使用详解
2014/12/29 Javascript
JavaScript严格模式详解
2015/11/18 Javascript
微信小程序 封装http请求实例详解
2017/01/16 Javascript
详解vue中点击空白处隐藏div的实现(用指令实现)
2018/04/19 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
jQuery实现简单聊天室
2020/02/08 jQuery
原生JS实现萤火虫效果
2020/03/07 Javascript
jQuery 实现扁平式小清新导航
2020/07/07 jQuery
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
2014/06/18 Python
Python爬虫框架Scrapy基本用法入门教程
2018/07/26 Python
Opencv实现抠图背景图替换功能
2019/05/21 Python
python利用7z批量解压rar的实现
2019/08/07 Python
python:HDF和CSV存储优劣对比分析
2020/06/08 Python
教师评优的个人自我评价分享
2013/09/19 职场文书
大学生旅游业创业计划书
2014/01/29 职场文书
大学生会计职业生涯规划范文
2014/02/28 职场文书
安全生产管理合理化建议书
2014/03/12 职场文书
关于读书的演讲稿1000字
2014/08/27 职场文书
夫妻房产协议书的格式
2014/10/11 职场文书
公司股东出资证明书
2014/11/01 职场文书
考试作弊检讨
2015/01/27 职场文书
2015年小学生暑假总结
2015/07/13 职场文书
tensorboard 可视化之localhost:6006不显示的解决方案
2021/05/22 Python
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js