一个非常好用的文字滚动的案例,鼠标悬浮可暂停[两种方案任选]


Posted in Javascript onDecember 01, 2016

网上找了很多,万变不离其宗,写法核心都是一样的,在这里我给大家总结一下,可收藏备用。

html:

<div class="scroll">
 <ul class="list">
  <li><a href="#" target="_blank">公告一 或 中奖者 甲</a></li>
  <li><a href="#" target="_blank">公告二 或 中奖者 乙</a></li>
  <li><a href="#" target="_blank">公告三 或 中奖者 丙</a></li>
 </ul>
</div>

解析:适用于只有一行显示的公告类,以及展示中奖名单/抽奖结果等大框类,改变list高度即可

方案一:

function autoScroll(obj) {
 $(obj).find(".list").animate({
  marginTop: "-25px"
 }, 1000, function () {
  $(this).css({marginTop: "0px"}).find("li:first").appendTo(this);
 })
}
var timer = setInterval('autoScroll(".scroll")', 1000);
$(function () {
 $(".scroll").hover(function () {
  clearInterval(timer);
 }, function () {
  timer = setInterval('autoScroll(".scroll")', 1000);
 })
})

方案二:

function autoScroll(obj) {
 //var _t;
 function scroll() {
  $(obj).find(".list").animate({
   marginTop: "-25px"
  }, 500, function () {
   $(this).css({marginTop: "0px"}).find("li:first").appendTo(this);
  })
 }
 var timer = setInterval(scroll, 2800);
 $(obj).hover(
  function () {
   clearInterval(_t);
  },
  function () {
   timer = setInterval(scroll, 2800);
  }
 )
}
$(function () {
 autoScroll(".scroll");
})

解析:两种方案实现的功能是一样的,都是通过改变margin-top的值,把第一个再添加到最后一个来实现的。第一种直接写出运行步骤,定时器可以定义在加载函数的外面,也可写在里面,但是以下的内容必须写在加载函数的里面,否则不能正常执行。

    如果整体又定义为一个函数,则下面要在加载函数里调用一次函数,即可执行。

    在hover事件中的回调函数,必须写timer=setInterval(),指定时器重新赋值给timer,直接写setInterval不起作用,如果写var timer=setInterval();则又重新定义了一个timer,同样不起作用。

以上就是本文的全部内容,希望对大家有所帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
Jquery命名冲突解决的五种方案分享
Mar 16 Javascript
在js中判断checkboxlist(.net控件客户端id)是否有选中
Apr 11 Javascript
JS中的构造函数详细解析
Mar 10 Javascript
jquery-syntax动态语法着色示例代码
May 14 Javascript
javascript模拟post提交隐藏地址栏的参数
Sep 03 Javascript
jQuery对val和atrr(&quot;value&quot;)赋值的区别介绍
Sep 26 Javascript
node.js中的buffer.length方法使用说明
Dec 14 Javascript
JavaScript事件委托用法分析
Jan 24 Javascript
BootStrap实现树形目录组件代码详解
Jun 21 Javascript
微信小程序模板和模块化用法实例分析
Nov 28 Javascript
小程序云开发实现数据库异步操作同步化
May 18 Javascript
layui表格内放置图片,并点击放大的实例
Sep 10 Javascript
jQuery中ajax错误调试分析
Dec 01 #Javascript
JQuery学习总结【二】
Dec 01 #Javascript
Vue.js第二天学习笔记(vue-router)
Dec 01 #Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
Dec 01 #Javascript
Vue方法与事件处理器详解
Dec 01 #Javascript
简单理解vue中实例属性vm.$els
Dec 01 #Javascript
jsp 自动编译机制详细介绍
Dec 01 #Javascript
You might like
组合算法的PHP解答方法
2012/02/04 PHP
php笔记之:初探PHPcms模块开发介绍
2013/04/26 PHP
smarty内部日期函数html_select_date()用法实例分析
2015/07/08 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
CSS中一些@规则的用法小结
2021/03/09 HTML / CSS
javascript动画效果类封装代码
2007/08/28 Javascript
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失
2009/06/04 Javascript
jquery分页插件jpaginate在IE中不兼容问题
2014/04/22 Javascript
jQuery图片切换插件jquery.cycle.js使用示例
2014/06/16 Javascript
node.js中的fs.lchown方法使用说明
2014/12/16 Javascript
基于jquery的手风琴图片展示效果实现方法
2014/12/16 Javascript
在JavaScript中call()与apply()区别
2016/01/22 Javascript
jQuery插件HighCharts绘制的基本折线图效果示例【附demo源码下载】
2017/03/07 Javascript
CentOS7中源码编译安装NodeJS的完整步骤
2018/10/13 NodeJs
详解基于webpack&amp;gettext的前端多语言方案
2019/01/29 Javascript
解决layer.prompt无效的问题
2019/09/24 Javascript
微信小程序swiper使用网络图片不显示问题解决
2019/12/13 Javascript
举例讲解Python中is和id的用法
2015/04/03 Python
python 调用HBase的简单实例
2016/12/18 Python
Python实现的tcp端口检测操作示例
2018/07/24 Python
利用pyecharts实现地图可视化的例子
2019/08/12 Python
快速创建 HTML5 Canvas 电信网络拓扑图的示例代码
2018/03/21 HTML / CSS
英国航空官网:British Airways
2016/09/11 全球购物
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
AVI-8手表美国官方商店:AVI-8 USA
2019/04/10 全球购物
什么是反射?如何实现反射?
2016/07/25 面试题
2014全国两会学习心得体会1000字
2014/03/10 职场文书
地质工程专业毕业生求职信
2014/08/08 职场文书
超市创业计划书
2014/09/15 职场文书
国家助学金感谢信
2015/01/21 职场文书
在职证明书模板
2015/06/15 职场文书
2015年中秋节主持词
2015/07/30 职场文书
小学四年级班主任工作经验交流材料
2015/11/02 职场文书
2017公司年会主持人开幕词
2016/03/04 职场文书
Pandas数据结构之Series的使用
2022/03/31 Python
Android开发 使用文件储存的方式保存QQ密码
2022/04/24 Java/Android