jQuery实现列表自动循环滚动鼠标悬停时停止滚动


Posted in Javascript onSeptember 06, 2013

需要在页面中一个小的区域循环滚动展示新闻(公告、活动、图片等等),并且,鼠标悬停时停止滚动并提示,离开后,继续滚动。

效果图:
jQuery实现列表自动循环滚动鼠标悬停时停止滚动 jQuery实现列表自动循环滚动鼠标悬停时停止滚动
上干货
html:

<div id="news"> 
<ul> 
<li><a href="#" title="aaaaaaaaaaaaaaa">aaaaaaaaaaaaaaa</a></li> 
<li><a href="#" title="bbbbbbbbbbbbbbb">bbbbbbbbbbbbbbb</a></li> 
<li><a href="#" title="ccccccccccccccc">ccccccccccccccc</a></li> 
<li><a href="#" title="ddddddddddddddd">ddddddddddddddd</a></li> 
<li><a href="#" title="eeeeeeeeeeeeeee">eeeeeeeeeeeeeee</a></li> 
<li><a href="#" title="fffffffffffffff">fffffffffffffff</a></li> 
<li><a href="#" title="ggggggggggggggg">ggggggggggggggg</a></li> 
</ul> 
</div>

css:
ui,li { 
list-style: none; 
} 
#news{ 
height: 75px; 
overflow: hidden; 
}

关键是js文件:
$(function() { 
var $this = $("#news"); 
var scrollTimer; 
$this.hover(function() { 
clearInterval(scrollTimer); 
}, function() { 
scrollTimer = setInterval(function() { 
scrollNews($this); 
}, 2000); 
}).trigger("mouseleave"); function scrollNews(obj) { 
var $self = obj.find("ul"); 
var lineHeight = $self.find("li:first").height(); 
$self.animate({ 
"marginTop": -lineHeight + "px" 
}, 600, function() { 
$self.css({ 
marginTop: 0 
}).find("li:first").appendTo($self); 
}) 
} 
})

主要就是对hover、setInterval、clearInterval、animate这些方法以及marginTop属性(marginLeft、top、left等等)的理解和运用,需要注意的是,如果不加.trigger("mouseleave"),在网页初始化的时候列表不会滚动,还有appendTo能直接移动元素,就这些了。
Javascript 相关文章推荐
为javascript添加String.Format方法
Aug 11 Javascript
js Math 对象的方法
Sep 01 Javascript
JS操作数据库的实例代码
Oct 17 Javascript
js加减乘除丢失精度问题解决方法
May 16 Javascript
js实现无缝滚动特效
Dec 20 Javascript
常用js,css文件统一加载方法(推荐) 并在加载之后调用回调函数
Sep 23 Javascript
JavaScript生成验证码并实现验证功能
Sep 24 Javascript
JQuery实现图片轮播效果
May 08 jQuery
基于Vue中点击组件外关闭组件的实现方法
Mar 06 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
Jun 11 Javascript
如何使用three.js 制作一个三维的推箱子游戏
Jul 29 Javascript
js实现购物车商品数量加减
Sep 21 Javascript
jquery实现metro效果示例代码
Sep 06 #Javascript
JS去除数组重复值的五种不同方法
Sep 06 #Javascript
JavaScript判断密码强度(自写代码)
Sep 06 #Javascript
js实现连续英文字符自动换行兼容ie6 ie7和firefox
Sep 06 #Javascript
让网页跳转到指定位置的jquery代码非书签
Sep 06 #Javascript
jquery中prop()方法和attr()方法的区别浅析
Sep 06 #Javascript
CheckBoxList多选样式jquery、C#获取选择项
Sep 06 #Javascript
You might like
php skymvc 一款轻量、简单的php
2011/06/28 PHP
destoon调用discuz论坛中带图片帖子的实现方法
2014/08/21 PHP
laravel请求参数校验方法
2019/10/10 PHP
jquery插件制作 自增长输入框实现代码
2012/08/17 jQuery
基于JavaScript 声明全局变量的三种方式详解
2013/05/07 Javascript
解决JS中乘法的浮点错误的方法
2014/01/03 Javascript
自己实现ajax封装示例分享
2014/04/01 Javascript
javascript学习笔记之10个原生技巧
2014/05/21 Javascript
jQuery替换textarea中换行的方法
2015/06/10 Javascript
JavaScript中数据结构与算法(四):串(BF)
2015/06/19 Javascript
JavaScript实现动态删除列表框值的方法
2015/08/12 Javascript
Nginx上传文件全部缓存解决方案
2015/08/17 Javascript
Javascript 实现放大镜效果实例详解
2016/12/03 Javascript
jQuery插件FusionWidgets实现的AngularGauge图效果示例【附demo源码】
2017/03/23 jQuery
深入理解vue2.0路由如何配置问题
2017/07/18 Javascript
bootstrap时间控件daterangepicker使用方法及各种小bug修复
2017/10/25 Javascript
Parcel.js + Vue 2.x 极速零配置打包体验教程
2017/12/24 Javascript
详解Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)
2019/04/20 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
2019/11/25 Javascript
javascript+Canvas实现画板功能
2020/06/23 Javascript
python练习程序批量修改文件名
2014/01/16 Python
python中的装饰器详解
2015/04/13 Python
python解决汉字编码问题:Unicode Decode Error
2017/01/19 Python
对pandas读取中文unicode的csv和添加行标题的方法详解
2018/12/12 Python
Python字符串格式化输出代码实例
2019/11/22 Python
详解Python设计模式之策略模式
2020/06/15 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
2020/10/09 Python
python RSA加密的示例
2020/12/09 Python
如何使用Python进行PDF图片识别OCR
2021/01/22 Python
巴西网上药店:Drogaria Araujo
2021/01/06 全球购物
英语生日邀请函
2014/01/23 职场文书
静心口服夜广告词
2014/03/20 职场文书
安全生产宣传标语
2014/06/06 职场文书
企业宣传口号
2014/06/12 职场文书
幼儿园法制宣传日活动总结
2014/11/01 职场文书
2014年业务员工作总结范文
2014/11/17 职场文书