具有間歇效果的新聞列表垂直滾動程式碼
很多網站都具有這樣的效果,新聞列表能夠垂直不間斷滾動,並且具有間歇效果,就是每滾動一行能夠暫停一定時間,這樣不但能夠體現動態效果,而且能夠便於瀏覽者檢視新聞。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> ul li { list-style:none; height:30px; line-height:30px; width:300px; font-size:12px; } </style> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> $(function () { var scrollTimer = null; var delay = 2000; $('div.scrollNews').hover(function () { clearInterval(scrollTimer); }, function () { scrollTimer = setInterval(function () { scrollNews(); }, delay); }).triggerHandler('mouseout'); }); function scrollNews() { var $news = $('div.scrollNews>ul'); var $lineHeight = $news.find('li:first').height(); $news.animate({ 'marginTop': -$lineHeight + 'px' }, 600, function () { $news.css({ margin: 0 }).find('li:first').appendTo($news); }); } </script> </head> <body> <div class="scrollNews" style="width:350px;"> <ul> <li><a href="#" class="tooltip" title="螞蟻部落歡迎您.">螞蟻部落歡迎您.</a></li> <li><a href="#" class="tooltip" title="努力奮鬥才會有美好的前途.">努力奮鬥才會有美好的前途.</a></li> <li><a href="#" class="tooltip" title="沒有人一開始就是高手.">沒有人一開始就是高手.</a></li> <li><a href="#" class="tooltip" title="只有當前才是真實的.">只有當前才是真實的.</a></li> <li><a href="#" class="tooltip" title="每一天都是新的好好珍惜.">每一天都是新的好好珍惜.</a></li> <li><a href="#" class="tooltip" title="時間都是擠出來的.">時間都是擠出來的.</a></li> <li><a href="#" class="tooltip" title="互助和分享是一個人胸懷的體現.">互助和分享是人胸懷的體現.</a></li> </ul> </div> </body> </html>
以上程式碼實現了我們的要求,下面介紹一下此功能的實現過程。
一.程式碼註釋:
1.$(function () { }),穩當結構完全載入完畢再去執行函式中的程式碼。
2.var scrollTimer = null,宣告一個變數用來作為定時器函式的返回值。
3.var delay = 2000,滾動間隔時間。
4.$('div.scrollNews').hover(),規定滑鼠懸浮和離開要執行的函式。
5.clearInterval(scrollTimer),滑鼠懸浮時候停止滾動效果。
6.scrollTimer = setInterval(function () {scrollNews(); }, delay),每隔指定的事件執行一次函式scrollNews()。
7.triggerHandler('mouseout'),觸發mouseout事件其實也就是執行hover規定的第二個函式,因為hover其實是由mouseover和mouseout組成的。
8.function scrollNews() { }核心滾動程式碼。
9.var $news = $('div.scrollNews>ul'),獲取ul元素物件。
10.var $lineHeight = $news.find('li:first').height(),獲取第一個li元素的高度。
11.$news.animate({ 'marginTop': -$lineHeight + 'px' }, 600, function () { $news.css({ margin: 0 }).find('li:first').appendTo($news); }); ,首先以動畫方式設定ul的margin-top屬性值為負的第一個li的高度,回撥函式的功能是ul元素的margin-top重置為0,並且將當前第一個li放到ul的最後位置。
二.相關閱讀:
1.hover事件可以參閱jQuery hover事件一章節。
2.clearInterval()函式可以參閱 clearInterval()一章節。
3.setInterval()函式可以參閱setInterval()一章節。
4.find()函式可以參閱jQuery find()一章節。
5.height()函式可以參閱jQuery height()一章節。
6.animate()函式可以參閱jQuery animate()一章節。
7.appendTo()函式可以參閱jQuery appendTo()一章節。
相關文章
- 新聞公告具有時間間隔垂直滾動程式碼
- 單行新聞公告間歇垂直無縫滾動
- jQuery具有暫停功效果新聞列表向上滾動jQuery
- jQuery 圖片列表垂直間歇無縫滾動jQuery
- jQuery新聞列表垂直滾動詳解jQuery
- jQuery列表上下垂直滾動效果程式碼例項jQuery
- JavaScript 垂直新聞公告無縫滾動JavaScript
- 新聞單條無縫間歇向上滾動(第一次分享)
- jQuery 間歇的無縫滾動jQuery
- JavaScript垂直新聞公告無縫滾動詳解JavaScript
- 文字垂直迴圈滾動效果
- jQuery實現的但行文字具有時間間隔向上滾動效果jQuery
- js頁面全屏垂直滾動效果JS
- Flutter 新聞詳情頁二——WebView和列表豎直滾動FlutterWebView
- js實現的文字垂直滾動例項程式碼JS
- css實現新聞公告上下翻滾效果CSS
- 頁面全屏垂直平滑滾動程式碼例項
- ul li實現的新聞列表程式碼例項
- CSS 帶有時間日期的新聞列表CSS
- 美化滾動條效果程式碼例項
- CSS3滾動條效果程式碼CSSS3
- 如何讓VB6程式碼編輯器垂直滾動條隨滑鼠滾輪滾動
- ul和li實現的新聞列表程式碼例項
- jQuery實現的新聞列表上下移動調整順序程式碼例項jQuery
- 滑鼠按住拖動具有半透明效果的程式碼例項
- 微信小程式功能之全屏滾動效果的實現程式碼微信小程式
- 仿網易新聞效果原始碼分析原始碼
- 計算瀏覽器垂直滾動條的寬度程式碼例項瀏覽器
- ios自定義類似網易新聞的滾動條iOS
- 一側具有滑鼠跟隨效果的垂直導航選單
- 網頁title標題滾動效果程式碼例項網頁
- 滑鼠懸浮底部具有動態延伸條效果程式碼例項
- javascript模擬實現滾動條效果程式碼例項JavaScript
- 拖動滾動條實現div跟隨效果程式碼例項
- jQuery單行新聞標題向上滾動詳解jQuery
- 隱藏滾動條保留滾動效果
- css去掉新聞列表最後一個新聞的下劃線CSS
- css實現的div垂直居中效果程式碼例項CSS