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 相关文章推荐
判断多个元素(RADIO,CHECKBOX等)是否被选择的原理说明
Feb 18 Javascript
重载toString实现JS HashMap分析
Mar 13 Javascript
js计算字符串长度包含的中文是utf8格式
Oct 15 Javascript
浅谈javascript的Touch事件
Sep 27 Javascript
AngularJS自定义插件实现网站用户引导功能示例
Nov 07 Javascript
JavaScript实现垂直向上无缝滚动特效代码
Nov 23 Javascript
JS 实现 ajax 异步浏览器兼容问题
Jan 21 Javascript
原生js实现对Ajax的封装(仿jquery)
Jan 22 Javascript
js实现打地鼠小游戏
Feb 13 Javascript
微信小程序自定义组件封装及父子间组件传值的方法
Aug 28 Javascript
vue打包相关细节整理(小结)
Sep 28 Javascript
JavaScript前端页面搜索功能案例【基于jQuery】
Jul 10 jQuery
扩展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的输入输出流
2007/02/14 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
php-app开发接口加密详解
2018/04/18 PHP
thinkphp5修改view到根目录实例方法
2019/07/02 PHP
PHP中通过getopt解析GNU C风格命令行选项
2019/11/18 PHP
论坛特效代码收集(落伍转发-不错)
2006/12/02 Javascript
原生javascript获取元素样式属性值的方法
2010/12/25 Javascript
JS特权方法定义作用以及与公有方法的区别
2013/03/18 Javascript
javascript避免数字计算精度误差的方法详解
2014/03/05 Javascript
node.js中的buffer.Buffer.isEncoding方法使用说明
2014/12/14 Javascript
node.js中的fs.appendFileSync方法使用说明
2014/12/17 Javascript
jQuery中delegate()方法用法实例
2015/01/19 Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
2015/06/16 Javascript
JQuery.Ajax()的data参数类型实例详解
2015/11/20 Javascript
EasyUI学习之DataGird分页显示数据
2016/12/29 Javascript
关于vue的语法规则检测报错问题的解决
2018/05/21 Javascript
浅谈angularJS2中的界面跳转方法
2018/08/31 Javascript
微信小程序项目总结之记账小程序功能的实现(包括后端)
2019/08/20 Javascript
如何基于原生javaScript生成带图片的二维码
2019/11/21 Javascript
解决vue安装less报错Failed to compile with 1 errors的问题
2020/10/22 Javascript
ant design vue中日期选择框混合时间选择器的用法说明
2020/10/27 Javascript
[04:03]DOTA2英雄梦之声_第02期_风暴之灵
2014/06/30 DOTA
跟老齐学Python之数据类型总结
2014/09/24 Python
详解Python的Django框架中manage命令的使用与扩展
2016/04/11 Python
Python调用adb命令实现对多台设备同时进行reboot的方法
2018/10/15 Python
Python Django实现layui风格+django分页功能的例子
2019/08/29 Python
基于python连接oracle导并出数据文件
2020/04/28 Python
CSS3实现水平居中、垂直居中、水平垂直居中的实例代码
2020/02/27 HTML / CSS
Spartoo比利时:欧洲时尚购物网站
2017/12/06 全球购物
大学生自荐信
2013/12/11 职场文书
书香校园建设方案
2014/05/02 职场文书
社会体育专业大学生职业生涯规划书
2014/09/17 职场文书
2014第二批党员干部对照“四风”找差距检查材料思想汇报
2014/09/18 职场文书
实习班主任自我评价
2015/03/11 职场文书
小学生安全保证书
2015/05/09 职场文书
政协常委会议主持词
2015/07/03 职场文书