jQuery实现鼠标经过购物车出现下拉框代码(推荐)


Posted in Javascript onJuly 21, 2016

这一段时间在学习web前端,最近学了jQuery库,深感其强大,下面通过写购物车的下拉框做法,把自己的理解和大家交流一下,欢迎各位大神指点指正,废话不多说,开始正题:

  购物车html:

<!-- 购物车 start -->
<div class="shopping" id="shopping-box">
<a href="" id="shoptext"><i class="iconfont"></i> 购物车(0)</a>
<!-- 购物车下拉框 start-->
<div class="shop" id="shop-content">
购物车中还没有商品,赶紧选购吧!
</div>
<!-- 购物车下拉框 end-->
</div>
<!-- 购物车 end -->

刚开始学习原生js时候的写法:

//购物车下拉框 start
var shoppingBoxNode = document.getElementById("shopping-box");
var shopContentNode = document.getElementById("shop-content");
var shoptext = document.getElementById("shoptext");
shoppingBoxNode.onmouseenter = function(){
shoptext.style.background = "#fff";
shoptext.style.color = "#ff6700";
shopContentNode.style.display = "block";
console.log("over");
};
shoppingBoxNode.onmouseleave = function(){
shoptext.style.background = "";
shoptext.style.color = "";
shopContentNode.style.display = "";
console.log("out");
};
//购物车下拉框 end

感觉很麻烦,而且还不好理解,下面用jQuery来写的:

//购物车 下拉
var interval1;
$("#shopping-box").mouseenter(function(){
clearTimeout(interval1);
$(this).children().first().css({"color":"#ff6700","background":"#fff"});
$(this).children().last().stop(true,true).slideDown();
}).mouseleave(function(){
var self = $(this);
interval1 = setTimeout(function(){
self.children().first().removeAttr("style");
},700);
$(this).children().last().delay(200).slideUp();
});

这个看着就干净利落的多,相对的减少了代码量,这里面事件使用应用链的写法,而且jQuery的方法的兼容问题基本上在其内被都已经被解决了,这点真是让前端的工作量减少了很多,用原生的时候调兼容调的头都快炸了(大家都懂的。。。),里面用到了jQuery中的延时delay和停止动画stop来处理(很好用的两个函数),当鼠标移动过快出现的问题

这里面事件的写法当然也可以用下面的方法(on也可以用bind来替换):

//购物车 下拉
var interval1;
$("#shopping-box").on({
mouseenter:function(){
},
mouseleave:function(){ 
}
});

以上所述是小编给大家介绍的jQuery实现鼠标经过购物车出现下拉框 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
用JS实现一个页面多个css样式实现
May 29 Javascript
IE6图片加载的一个BUG解决方法
Jul 13 Javascript
JavaScript框架(iframe)操作总结
Apr 16 Javascript
jQuery根据ID获取input、checkbox、radio、select的示例
Aug 11 Javascript
jQuery中queue()方法用法实例
Dec 29 Javascript
JS实现表单中checkbox对勾选中增加边框显示效果
Aug 21 Javascript
让你一句话理解闭包(简单易懂)
Jun 03 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
Dec 02 Javascript
JS前端加密算法示例
Dec 22 Javascript
Vue单页及多页应用全局配置404页面实践记录
May 22 Javascript
Vue实现商品详情页的评价列表功能
Sep 04 Javascript
详解Vue数据驱动原理
Nov 17 Javascript
javascript实现滚动效果的数字时钟实例
Jul 21 #Javascript
如何用JS判断两个数字的大小
Jul 21 #Javascript
AngularJs基本特性解析(一)
Jul 21 #Javascript
jQuery表单验证插件解析(推荐)
Jul 21 #Javascript
JavaScript 数组- Array的方法总结(推荐)
Jul 21 #Javascript
完美JQuery图片切换效果的简单实现
Jul 21 #Javascript
jQuery的ajax下载blob文件
Jul 21 #Javascript
You might like
thinkphp实现上一篇与下一篇的方法
2014/12/08 PHP
windows7配置Nginx+php+mysql的详细教程
2016/09/04 PHP
解决AJAX中跨域访问出现'没有权限'的错误
2008/08/20 Javascript
jquery ajax 同步异步的执行示例代码
2010/06/23 Javascript
js跨域问题之跨域iframe自适应大小实现代码
2010/07/17 Javascript
跨域请求之jQuery的ajax jsonp的使用解惑
2011/10/09 Javascript
jquery 日期控件datepicker属性详细解析
2013/11/08 Javascript
js弹出层永远居中实现思路及代码
2013/11/29 Javascript
Jquery方式获取iframe页面中的 Dom元素
2014/05/07 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
ECMAScript 5严格模式(Strict Mode)介绍
2015/03/02 Javascript
jquery验证邮箱格式并显示提交按钮
2015/11/07 Javascript
nodejs服务搭建教程 nodejs访问本地站点文件
2017/04/07 NodeJs
基于React+Redux的SSR实现方法
2018/07/03 Javascript
vue强制刷新组件的方法示例
2019/02/28 Javascript
Vue2.4+新增属性.sync、$attrs、$listeners的具体使用
2020/03/08 Javascript
python删除过期文件的方法
2015/05/29 Python
举例详解Python中threading模块的几个常用方法
2015/06/18 Python
python利用sklearn包编写决策树源代码
2017/12/21 Python
python实现基于SVM手写数字识别功能
2020/05/27 Python
python如何拆分含有多种分隔符的字符串
2018/03/20 Python
python sys.argv[]用法实例详解
2018/05/25 Python
python3.6 tkinter实现屏保小程序
2019/07/30 Python
python已协程方式处理任务实现过程
2019/12/27 Python
python实现秒杀商品的微信自动提醒功能(代码详解)
2020/04/27 Python
localStorage的过期时间设置的方法详解
2018/11/26 HTML / CSS
英国复古服装购物网站:Collectif
2019/10/30 全球购物
会计专业自我鉴定范文
2013/10/06 职场文书
解除劳动合同协议书范本
2014/09/13 职场文书
工作期间打牌检讨书范文
2014/11/20 职场文书
慰问信模板
2015/02/14 职场文书
农民工工资保障承诺书
2015/05/04 职场文书
2016年教师节贺卡寄语
2015/12/04 职场文书
2016年五四青年节校园广播稿
2015/12/17 职场文书
Python爬虫框架之Scrapy中Spider的用法
2021/06/28 Python
MySQL命令无法输入中文问题的解决方式
2021/08/30 MySQL