特殊的圖片輪換特效

来源:http://www.cnblogs.com/jasmine-95/archive/2016/03/30/5336845.html
-Advertisement-
Play Games

特殊的圖片輪換特效 一、實現效果 如上圖: 1、圖片自動依次輪換,每輪換到一張圖片,下麵對應的小圖標出現紅色邊框,並顯示對應的圖片名稱 2、滑鼠放到大圖片上面的時,圖片停止輪換,一直顯示當前圖片;滑鼠移開後圖片繼續輪換 3、滑鼠移到小圖標上時,大圖片區域會顯示對應的大圖;滑鼠移開則從當前圖片開始繼續 ...


特殊的圖片輪換特效

一、實現效果

如上圖:

  1、圖片自動依次輪換,每輪換到一張圖片,下麵對應的小圖標出現紅色邊框,並顯示對應的圖片名稱

  2、滑鼠放到大圖片上面的時,圖片停止輪換,一直顯示當前圖片;滑鼠移開後圖片繼續輪換

  3、滑鼠移到小圖標上時,大圖片區域會顯示對應的大圖;滑鼠移開則從當前圖片開始繼續輪換

 

 

二、代碼

  1 <!DOCTYPE html>
  2 <html>
  3 <head lang="en">
  4     <meta charset="UTF-8">
  5     <title>帶小圖標的JS圖片輪換</title>
  6     <style type="text/css">
  7         *{
  8             margin: 0px;
  9             padding: 0px;
 10         }
 11         #content{
 12             width: 700px;
 13             height: 538px;
 14             margin: 0px auto;   /*使所有內容居中*/
 15             border: solid #F0F0F0;
 16         }
 17 
 18         /*定義下麵小圖標處樣式*/
 19         #nav1 table{
 20             width: 100%;
 21             height: 35px;
 22             margin-top: -4px;
 23         }
 24         #nav1 td{
 25             width: 35px;
 26             height: 35px;
 27             text-align: center;   /*文字居中*/
 28             color: #ffffff;
 29         }
 30         #text{
 31 
 32         }
 33         #_text{
 34             width: 100%;
 35             height: 100%;
 36             background-color: #F0F0F0;
 37             border: none;
 38             text-align: center;
 39             font-size: 18px;
 40             color: #000000;
 41             font-weight: bold;
 42         }
 43     </style>
 44 </head>
 45 <body onload="changeImg()">
 46     <div id="content">
 47         <div id="images">
 48             <img id="_photoes" src="../images/textPhoto/1.jpg" height="500px" width="700px" onmouseover="over1()" onmouseout="out1()">
 49         </div>
 50         <div id="nav1">
 51             <table border="0">
 52                 <tr>
 53                     <td id="text" bgcolor="#F0F0F0" colspan="15"><input type="text" id="_text" readonly></td>
 54                     <td id="img1" class="sImg" bgcolor="#db7093" onmouseover="over2(1)" onmouseout="out2(1)">1</td>
 55                     <td id="img2" class="sImg" bgcolor="#da70d6" onmouseover="over2(2)" onmouseout="out2(2)">2</td>
 56                     <td id="img3" class="sImg" bgcolor="#9acd32" onmouseover="over2(3)" onmouseout="out2(3)">3</td>
 57                     <td id="img4" class="sImg" bgcolor="#adff2f" onmouseover="over2(4)" onmouseout="out2(4)">4</td>
 58                     <td id="img5" class="sImg" bgcolor="#00bfff" onmouseover="over2(5)" onmouseout="out2(5)">5</td>
 59                 </tr>
 60             </table>
 61         </div>
 62     </div>
 63 
 64     <script type="text/javascript">
 65         //將輪換的大圖片放入數組中
 66         var arr = new Array();
 67         arr[0] = "../images/textPhoto/1.jpg";
 68         arr[1] = "../images/textPhoto/2.jpg";
 69         arr[2] = "../images/textPhoto/3.jpg";
 70         arr[3] = "../images/textPhoto/4.jpg";
 71         arr[4] = "../images/textPhoto/5.jpg";
 72 
 73         //將input區域變換的文字放在數組裡
 74         var text = new Array();
 75         text[0] = "焦點圖1";
 76         text[1] = "焦點圖2";
 77         text[2] = "焦點圖3";
 78         text[3] = "焦點圖4";
 79         text[4] = "焦點圖5";
 80 
 81         var smallImg = document.getElementsByClassName("sImg");   //將頁面上所有小圖片存放在一個數組
 82 
 83         var num = 0;
 84         function changeImg() {
 85             document.getElementById("_photoes").src = arr[num];
 86             document.getElementById("_text").value = text[num];
 87             //當前小圖標增加邊框樣式
 88             for(var i=0;i<arr.length;i++) {
 89                 if(i==num) smallImg[num].style.border = "red solid";  //大圖標對應的小圖標增加邊框樣式
 90                 else smallImg[i].style.border = "none";
 91             }
 92             if (num == arr.length - 1)  num = 0;   //如果顯示的是最後一張圖片,則圖片序號變為第一張的序號
 93             else  num += 1;    //圖片序號加一
 94         }
 95 
 96         var setID = setInterval("changeImg()",1000);   //這樣寫任然會不斷調用changeImg()函數
 97 
 98         /*當滑鼠滑到大圖標上時*/
 99         function over1() {
100             clearInterval(setID);   //圖片停止輪換
101 //            smallImg[n-1].style.border = "red solid";
102         }
103 
104         /*當滑鼠離開大圖標時*/
105         function out1() {
106             setID = setInterval("changeImg()",1000);     //圖片繼續輪換
107 //            smallImg[n-1].style.border = "none";   //大圖標對應的小圖標邊框樣式取消
108         }
109 
110         /*當滑鼠滑到小圖標上時*/
111         function over2(n) {
112             document.getElementById("_photoes").src = arr[n-1];   //只要滑鼠滑到小圖標上,大圖區域就顯示對應的圖片
113             document.getElementById("_text").value = text[n-1];
114             clearInterval(setID);   //圖片停止輪換
115             //當前小圖標增加邊框樣式
116             for(var i=0;i<arr.length;i++) {
117                 if(i==n-1) smallImg[n-1].style.border = "red solid";
118                 else smallImg[i].style.border = "none";
119             }
120         }
121 
122         /*當滑鼠離開小圖標時*/
123         function out2(n) {
124             if(n!=arr.length)
125                 num = n;    //從當前圖片開始輪換
126             else num = 0;
127             setID = setInterval("changeImg()",1000);     //圖片繼續輪換
128 //            smallImg[n-1].style.border = "none";   //小圖標邊框樣式取消
129         }
130     </script>
131 </body>
132 </html>
View Code

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • rem/em/px/pt的基友關係 px 像素相對長度單位,相對於顯示器屏幕解析度而言 em 相對長度單位,根據其父元素來設置字體大小 pt point,是印刷行業常用單位,等於1/72英寸 rem CSS3新增的一個相對單位,是根據網頁的跟元素(html)來設置字體大小 rem應用於適配 rem的 ...
  • 本篇主要介紹HTML5規範的內容和頁面上的架構變動。 目錄 1. HTML5介紹 1.1 介紹 1.2 內容 1.3 瀏覽器支持情況 2. 創建HTML5頁面 2.1 <!DOCTYPE> 文檔類型聲明 2.2 <html>標簽 2.3 <meta>標簽 設置字元編碼 2.4 引用樣式表 2.5 引 ...
  • 1、JavaScript提示“未結束的字元串常量”錯誤解決方法 1.1 JavaScript引用時,使用的字元語言不一致. 比如:<script type=”text/javascript” src=”xxx.js” charset=”UTF-8″>.xxx.js文件內部使用的是GB2312的格式, ...
  • 1、標簽input在type="file"時,name是必須屬性 ...
  • 1、子DIV塊中設置margin-top時影響父DIV塊位置的問題 ...
  • JS中所有的function都是一個閉包,不過一般來說,嵌套的function所產生的閉包更為強大,也是大部分時候我們所謂的閉包。 我們可以把閉包理解為定義在一個函數內的函數。 當點擊一個節點時,按照預期,應該彈出節點的序號,但實際彈出的是-1. 函數在執行的時候才初始化活動對象,當第一個函數執行時 ...
  • 工作好久了一直沒有恆心去做點什麼。今年開始準備把所有的基礎知識都理一理。然後寫點博客方便以後自己查詢。 最近在整理javascript的基礎知識。寫了很久的代碼發現自己到現在也只是使用js框架對於原生的js瞭解的並不深入。 var merge=function(s,p){for(prop in s) ...
  • 這是一組基於SVG製作的精美動畫圖標。這組圖標共150個,分為6大類。這些圖標都是扁平風格的圖標,有一些還帶有長陰影效果,所有的圖標在滑鼠滑過時都帶有一定的動畫效果。 使用方法 線上預覽 源碼下載 這些SVG圖標都使用<span>元素作為容器,通過jQuery來動態添加SVG表簽。例如瀏覽器圖標的H ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...