jQuery實現的簡單焦點圖特效實現過程詳解
本章節分享一段程式碼例項,它實現了非常簡單的焦點圖效果。
當然為了簡便,省略了圖片,並且效果也並不是特別的完美,但是也能夠學習到一定原理。
程式碼如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #slider{ position:relative; overflow:hidden; margin:20px auto; height:240px; width:740px; padding:5px; border:2px solid #cdcdcd; } #show{ position:relative; height:240px; width:740px; } #show .img{ width:740px; height:240px; margin-bottom:5px; } #num{ position:absolute; right:5px; top:220px; } #num span{ float:left; display:block; text-align:center; width:20px; height:20px; line-height:20px; margin:2px; font-family:Arial, Helvetica, sans-serif; font-size:14px; font-weight:blod; background:#f2f2f2; border:1px solid #D78918; color:#D78918; } #num .current{ color:#fff; width:21px; height:21px; line-height:21px; font-size:16px; border:0px; margin:0px 1px; background-color:#FF7300; } </style> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script type="text/javascript"> $(function(){ var count=1; setInterval(function(){ count=count==5?0:count; var top=-count*(240+5); count++; $("#show").animate({top:top},600); $("#num").find("span").eq(count-1).addClass("current").siblings().removeClass("current"); },2000); }) </script> </head> <body> <div id="slider"> <div id="show"> <div class="img" style="background:red;"></div> <div class="img" style="background:blue"></div> <div class="img" style="background:gold"></div> <div class="img" style="background:yellow"></div> <div class="img" style="background:green"></div> </div> <div id="num"> <span class="current">1</span> <span>2</span> <span>3</span> <span>4</span> <span>5</span> </div> </div> </body> </html>
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
程式碼註釋:
(1).$(function(){}),當文件結構完全載入完畢再去執行函式中的程式碼。
(2).var count=1,宣告一個變數,用來進行計數的。
(3).setInterval(function(){},2000),定時器函式,每隔2秒執行一下指定函式。
(4).count=count==5?0:count;,如果count等於5,那麼就將其重置為0。
(5).var top=-count*(240+5),設定元素的top屬性值,之所以實現輪播,就是不斷的設定元素top值,實現隱藏和顯示圖片的效果。
(6).count++,count值加1。
(7).$("#show").animate({top:top},600),以動畫方式通過top定位元素。
(8).$("#num").find("span").eq(count-1).addClass("current").siblings().removeClass("current"),這段程式碼的作用就是將對應索引的span元素新增current樣式類,其他的span刪除此樣式類。
相關文章
- jQuery實現圖示特效(精靈圖)jQuery特效
- 【Node】詳解模組的實現過程
- 堆排序的Python實現(附詳細過程圖和講解)排序Python
- jQuery實現簡易商城系統專案實操詳解jQuery
- 實現一個簡單的 jQuery 的 APIjQueryAPI
- jQuery實現3D圖片輪播詳解jQuery3D
- DIV的失去焦點(blur)實現
- jQuery實現簡單點選隱藏和點選顯示列表的功能jQuery
- jquery 實現滑動條的簡單驗證jQuery
- 用最簡單的方法實現原生 JS 放大鏡特效JS特效
- Jquery實現微博分享評論表情特效jQuery特效
- .滑鼠點選愛心特效的實現特效
- 直播特效的實現原理與難點特效
- promise實現過程Promise
- jquery焦點圖效果視訊jQuery
- 詳細分析連結串列的資料結構的實現過程(Java 實現)資料結構Java
- 簡單實現點選回到頂部
- 從零實現一個簡易的jQuery框架之二—核心思路詳解jQuery框架
- AOP的簡單實現
- 簡單的 HashMap 實現HashMap
- 實現簡單的BitMap
- ArrayList的簡單實現
- jquery中點選切換的實現jQuery
- 圖的拓撲排序詳解與實現排序
- 使用TensorFlow 來實現一個簡單的驗證碼識別過程
- 簡單實現帶節點的進度條
- 訂單交易平臺三(登入介面整個實現過程)階段一(只實現簡單的登入功能)
- 詳細分析棧和佇列的資料結構的實現過程(Java 實現)佇列資料結構Java
- 實現簡單的輪播圖(單張圖片、多張圖片)
- 常見下載方式之BT下載實現過程詳解
- Spring AOP實現過程Spring
- Gin與Mysql實現簡單Restful風格API實戰示例詳解PRHCMySqlRESTAPI
- Promise 簡單實現Promise
- ReadableStream 簡單實現
- Express 簡單實現Express
- AspectJ簡單實現
- FastClick簡單實現AST
- 如何實現一個簡化版的 jQueryjQuery
- Jquery實現拖拽式繪圖工具jQuery繪圖