2.html代码:

  1. <h3>最新动态</h3>
  2. <div class="scrollNews" >
  3. <ul>
  4. <li><a href="#" class="tooltip" title="甜美宽松毛衣今秋一定红.">甜美宽松毛衣今秋一定红.</a></li>
  5. <li><a href="#" class="tooltip" title="秋装百搭小马甲不到50元.">秋装百搭小马甲不到50元.</a></li>
  6. <li><a href="#" class="tooltip" title="修身韩版小西装万人疯抢.">修身韩版小西装万人疯抢.</a></li>
  7. <li><a href="#" class="tooltip" title="夏末雪纺店主含泪大甩卖.">夏末雪纺店主含泪大甩卖.</a></li>
  8. <li><a href="#" class="tooltip" title="瑞丽都疯狂推荐的秋装.">瑞丽都疯狂推荐的秋装.</a></li>
  9. <li><a href="#" class="tooltip" title="48元长款针织小开衫卖疯啦.">48元长款针织小开衫卖疯啦.</a></li>
  10. <li><a href="#" class="tooltip" title="长袖雪纺衫单穿内搭都超美.">长袖雪纺衫单穿内搭都超美.</a></li>
  11. </ul>
  12. </div>

3.jquery代码:

  1. /*新闻滚动*/
  2. $(function(){
  3. //将$(".scrollNews")对象作为参数传递给scollNews()函数的参数
  4. var $this = $(".scrollNews");
  5. //滚动定时器变量
  6. var scrollTimer;
  7. //hover()方法的含义是鼠标滑入滑出,它对应着两个事件,即mouseenter和mouseleave,因此可通过trigger("mouseleave")来触发hover事件的第二个函数
  8. $this.hover(
  9. function(){
  10. clearInterval(scrollTimer);
  11. },
  12. function(){
  13. scrollTimer = setInterval(function(){
  14. scrollNews( $this );//每3秒执行一次scrollNews函数
  15. }, 3000 );
  16. }
  17. ).trigger("mouseleave");//当用户进入页面后就会触发hover事件的第二个函数,从而使内容滚动起来
  18. });
  19. function scrollNews(obj){
  20. var $self = obj.find("ul:first"); //找到第一个ul元素
  21. var lineHeight = $self.find("li:first").height(); //获取第一个li元素的行高
  22. $self.animate({ "marginTop" : -lineHeight +"px" }, 600 , function(){
  23. //alert($self.css({marginTop:0}).find("li:first").text());//逐条获取
  24. //把所有匹配的元素追加到$self元素的后面,所以才出现这种周而复始滚动的效果
  25. $self.css({marginTop:0}).find("li:first").appendTo($self); //appendTo能直接移动元素
  26. })
  27. }

分析:通过控制$(".scrollNews");对象内的<ul>元素的marginTop属性来得到动画效果。至于每次滚动的高度,可以通过获取<ul>元素内的第一个<li>元素的高度来达到目的。当每次滚动完毕后,需要把当前第一个<li>元素移动到<ul>元素内的最后,然后将<ul>元素的marginTop属性设置为零,这样动画才可以无限的循环滚动

【js与jquery】jquery循环滚动新闻的更多相关文章

  1. Jquery制作--循环滚动列表

    自己模仿JQ插件的写法写了一个循环滚动列表插件,支持自定义上.下.左.右四个方向,支持平滑滚动或者间断滚动两种方式,都是通过参数设置.JQ里面有些重复的地方,暂时没想到更好的方法去精简.不过效果还是可 ...

  2. jQuery循环滚动新闻列表

    最近由于项目原因,学习了下jquery,实现了一个小小的功能,就是点击公告的上一条下一条来查看滚动条.具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DT ...

  3. 基于JQuery打造无缝滚动新闻

    JQuery实现 新闻无缝滚动 一.使用"首尾追加"实现无缝滚动 <head lang="en"> <meta charset="U ...

  4. jQuery左右循环滚动图片特效

    在线演示 本地下载

  5. jQuery 实现列表自动滚动循环滚动显示新闻通知

    需求 页面中一个小区域循环滚动展示通知(公告.新闻.活动.图片等),并且鼠标hover时停止滚动并提示,鼠标离开后,继续滚动. 效果图 https://www.iguopin.com/index.ph ...

  6. jQuery图片无缝滚动JS代码ul/li结构

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. 仿小米网jQuery全屏滚动插件fullPage.js

    演 示 下 载   简介 如今我们经常能见到全屏网站,尤其是国外网站.这些网站用几幅很大的图片或色块做背景,再添加一些简单的内容,显得格外的高端大气上档次.比如 iPhone 5C 的介绍页面,QQ浏 ...

  8. js原生 + jQuery实现页面滚动字幕

    js原生/jQuery实现页面滚动字幕效果 17:45:49 在新闻列表或者文章列表信息等页面中很容易要求实现字幕滚动的效果,以下为简单的实现页面中滚动字幕的效果 1.jQuery实现页面滚动字幕效果 ...

  9. jQuery全屏滚动插件fullPage.js中文帮助文档API

    jQuery全屏滚动插件fullPage.js中文帮助文档API   发现了一个fullPage.js插件,于是百度了一下,还就是这个插件的作用,其实有很多网站都做了全屏滚动的特效,效果也很好看,今天 ...

随机推荐

  1. 【C++ Primer】用于大型程序的工具

    1. 异常处理 异常以类似于将实參传递给函数的方式抛出和捕获.异常可以是可传给非引用实參的随意实參的类型,这意味着必须可以复制该类型的对象. 当抛出一个表达式的时候,被抛出对象的静态编译时类型将决定异 ...

  2. OpenCV教程(42) xml/yaml文件的读写

    参考资料: http://docs.opencv.org/modules/core/doc/xml_yaml_persistence.html #include "opencv2/openc ...

  3. [14] 齿轮(Gear Wheel)图形的生成算法

    顶点数据的生成 bool YfBuildGearwheelVertices ( Yreal radius, Yreal assistRadius, Yreal height, Yuint slices ...

  4. Visual Studio Code 构建C/C++开发环境

    转自: https://blog.csdn.net/lidong_12664196/article/details/68928136#visual-sutdio-code%E4%BB%A5%E5%8F ...

  5. WF4.0(3)----变量与参数

    已经写了两篇关于WF4.0的博客,算是基础博客,如果是WF比较熟悉就直接跳过吧,如果你对工作流不是很熟悉,或者想了解一下基础的东西,本文还是比较适合你的.工作流中变量,参数,表达式属于数据模型中概念, ...

  6. Command 命令模式 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  7. 遇到问题描述:Android Please ensure that adb is correctly located at问题解决

    遇到问题描述: 运行android程序控制台输出 [2013-11-04 16:18:26 - ] The connection to adb is down, and a severe error ...

  8. 解决bootstrap和jquey中的.button扩展冲突的问题。

     

  9. WebClient.DownloadData突然失灵

      有如下的代码: try { byte[] acsMetadata; using (WebClient webClient = new WebClient()) { acsMetadata = we ...

  10. AsyncTask 和 Thread 区别

    一.AsyncTask是封装好的线程池,比起Thread+Handler的方式,AsyncTask在操作UI线程上更方便,因为onPreExecute().onPostExecute()及更新UI方法 ...