Jquery 点击按钮自动高亮实现原理及代码


Posted in Javascript onApril 25, 2014

其实原理很简单,我们点击的时候我们给元素加上一个自定义的attr,加上后便会有有一个匹配的样式去自动适配背景,几秒后去掉该样式恢复原状

首先在自己的js中拓展一个方法hoverEl

$.extend($.fn, { 
hoverEl:function(){ var _this = $(this); 
var _t = setTimeout(function(){ 
_this.attr("hover", "on"); 
}, 10); 
_this.attr("hoverTimeout", _t); 
setTimeout(function(){ 
clearTimeout( _this.attr("hoverTimeout") ); 
var _t = setTimeout(function(){ 
_this.removeAttr("hover"); 
}, 100); 
_this.attr("hoverTimeout", _t); 
},200); 
} 
});

其次定义样式,当特定attr被加上时
li[hover=on]{ 
background-image:-webkit-gradient(linear, 0% 100%, 0% 0%, from(#194FDB), to(#4286F5))!important; 
background-image: -webkit-linear-gradient(top, #4286F5, #194FDB)!important; 
color: white!important; 
cursor: pointer!important; 
}

调用示例:
$(e.target).hoverEl();
Javascript 相关文章推荐
javascript event 事件解析
Jan 31 Javascript
JS中prototype关键字的功能介绍及使用示例
Jul 21 Javascript
JS实现合并两个数组并去除重复项只留一个的方法
Dec 17 Javascript
AngularJs 60分钟入门基础教程
Apr 03 Javascript
Bootstrap入门教程一Hello Bootstrap初识
Mar 02 Javascript
Bootstrap实现的表格合并单元格示例
Feb 06 Javascript
element-ui 表格实现单元格可编辑的示例
Feb 26 Javascript
vue脚手架搭建项目的兼容性配置详解
Jul 17 Javascript
微信小程序实现工作时间段选择
Feb 15 Javascript
利用Bootstrap Multiselect实现下拉框多选功能
Apr 08 Javascript
javascript实现数字时钟效果
Feb 06 Javascript
Ajax是什么?Ajax高级用法之Axios技术
Apr 21 Javascript
扩展jQuery对象时如何扩展成员变量具体怎么实现
Apr 25 #Javascript
jQuery中事件对象e的事件冒泡用法示例介绍
Apr 25 #Javascript
jquery实现select选中行、列合计示例
Apr 25 #Javascript
js点击事件链接的问题解决
Apr 25 #Javascript
对js关键字命名的疑问介绍
Apr 25 #Javascript
html5+javascript制作简易画板附图
Apr 25 #Javascript
js实现字符串的16进制编码不加密
Apr 25 #Javascript
You might like
php 静态页面中显示动态内容
2009/08/14 PHP
php表单提交问题的解决方法
2011/04/12 PHP
PHP数组实例总结与说明
2011/08/23 PHP
yii2控制器Controller Ajax操作示例
2016/07/23 PHP
php实现背景图上添加圆形logo图标的方法
2016/11/17 PHP
PHP获取本周所有日期或者最近七天所有日期的方法
2018/06/20 PHP
laravel框架查询数据集转为数组的两种方法
2019/10/10 PHP
通过event对象的fromElement属性解决热区设置主实体的一个bug
2008/12/22 Javascript
iframe调用父页面函数示例详解
2014/07/17 Javascript
javascript闭包的理解
2015/04/01 Javascript
jQuery链式操作实例分析
2015/11/16 Javascript
JavaScript使用键盘输入控制实现数字验证功能
2016/08/19 Javascript
jquery.validate表单验证插件使用方法解析
2016/11/07 Javascript
JS实现两周内自动登录功能
2017/03/23 Javascript
Javascript实现购物车功能的详细代码
2018/05/08 Javascript
微信小程序CSS3动画下拉菜单效果
2018/11/04 Javascript
微信小程序实现点击空白隐藏的方法示例
2019/08/13 Javascript
原生javascript运动函数的封装示例【匀速、抛物线、多属性的运动等】
2020/02/23 Javascript
jQuery实时统计输入框字数及限制
2020/06/24 jQuery
vue项目中企业微信使用js-sdk时config和agentConfig配置方式详解
2020/12/15 Vue.js
[01:14:34]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第一局
2016/02/28 DOTA
对Python的Django框架中的项目进行单元测试的方法
2016/04/11 Python
Sanic框架异常处理与中间件操作实例分析
2018/07/16 Python
Python 打印中文字符的三种方法
2018/08/14 Python
Python3几个常见问题的处理方法
2019/02/26 Python
Python OpenCV中的numpy与图像类型转换操作
2020/12/11 Python
机械专业毕业生自荐信
2013/11/02 职场文书
办护照工作证明范本
2014/01/14 职场文书
幼儿园感恩节活动方案2014
2014/10/11 职场文书
党员个人整改方案及措施
2014/10/25 职场文书
解除同居协议书
2015/01/29 职场文书
2015年小学中秋节活动总结
2015/03/23 职场文书
JS监听Esc 键触发事键
2021/04/14 Javascript
matplotlib之pyplot模块实现添加子图subplot的使用
2021/04/25 Python
HTML CSS 一个标签实现带动画的抖音LOGO
2022/04/26 HTML / CSS
postgresql之greenplum字符串去重拼接方式
2023/05/08 PostgreSQL