這次我們要分享的這款jQuery焦點圖非常特別,它的外觀特別簡單,但又相當大氣。焦點圖的整體樣式是仿蘋果樣式的,由於jQuery的運用,我們只要點擊圖片下方的縮圖即可達到圖片切換的焦點圖特效,這款jQuery焦點圖插件非常適合在產片展示的網頁上使用。
接下來我們一起分享一下實現這款蘋果焦點圖的流程及原始碼。
HTML程式碼:
從以上HTML程式碼可以看出,整個焦點圖由一些div構成圖片容器,用ul li列表構成下面的縮圖。
CSS代碼:
#畫廊{
/* CSS3 盒子陰影 */
-moz-box-shadow:0 0 3px #AAAAAA;
-webkit-box-shadow:0 0 3px #AAAAAA;
盒子陰影:0 0 3px #AAAAAA;
/* CSS3 圓角 */
-moz-border-radius-bottomleft:4px;
-webkit-border-bottom-left-radius:4px;
左下邊框半徑:4px;
-moz-border-radius-bottomright:4px;
-webkit-border-right-radius:4px;
右下邊框半徑:4px;
邊框:1px 純白;
背景:url(img/panel.jpg) 重複-x 底部中心 #ffffff;
/* 畫廊的寬度 */
寬度:920px;
溢位:隱藏;
}
#幻燈片{
/* 這是投影片區域 */
高度:400px;
/* jQuery 隨後將寬度變更為所有投影片寬度的總和。 */
寬度:920px;
溢位:隱藏;
}
.幻燈片{
浮動:左;
}
#選單{
/* 這是縮圖的容器 */
高度:45px;
}
ul{
邊距:0px;
填充:0px;
}
李{
/* 每個縮圖都是 li 元素 */
寬度:60px;
顯示:內聯塊;
清單樣式:無;
高度:45px;
溢位:隱藏;
}
li.inact:懸停{
/* 非活動狀態,滑鼠停留時反白 */
背景:url(img/pic_bg.png) 重複;
}
li.act,li.act:懸停{
/* 拇指的活動狀態 */
背景:url(img/active_bg.png) 不重複;
}
li. 執行一個{
遊標:預設;
}
.fbar{
/* 最左邊的垂直條,位於第一個縮圖旁邊 */
寬度:2px;
背景:url(img/divider.png) 右無重複;
}
李阿{
顯示:塊;
背景:url(img/divider.png) 右無重複;
高度:35px;
上方填入:10px;
}
一張圖片{
邊框:無;
}
CSS程式碼也非常簡單,都是一些簡單設定而已。
jQuery程式碼:
$(文檔).ready(function(){
/* 這段程式碼在 DOM 完全載入後執行 */
var totWidth=0;
var 位置 = new Array();
$('#slides .slide').each(function(i){
/* 遍歷所有投影片,並累計寬度儲存於 totWidth */
位置[i]= totWidth;
totWidth = $(this).width();
/* 位置陣列包含每張投影片相對於容器左側部分的交換偏移量 */
if(!$(this).width())
{
Alert("請填入所有圖片的寬度與高度!");
回復錯誤;
}
});
$('#slides').width(totWidth);
/* 將 cotnainer div 的寬度改為所有投影片組合的精確寬度 */
$('#menu ul li a').click(function(e,keepScroll){
/* 在縮圖上點選 */
$('li.menuItem').removeClass('act').addClass('inact');
$(this).parent().addClass('act');
var pos = $(this).parent().prevAll('.menuItem').length;
$('#slides').stop().animate({marginLeft:-positions[pos] 'px'},450);
/* 開始滑動動畫 */
e.preventDefault();
/* 阻止連結的預設操作 */
// 若點選圖示則停止自動前進:
if(!keepScroll)clearInterval(itvl);
});
$('#menu ul li.menuItem:first').addClass('act').siblings().addClass('inact');
/* 頁面載入時,將第一個縮圖標記為活動 */
/*****
*
* 啟用自動前進。
*
****/
var 目前=1;
函數 autoAdvance()
{
if(current==-1) return false;
$('#menu ul li a').eq(current%$('#menu ul li a').length).trigger('click',[true]); // [true] 將作為第28 行click 函數的keepScroll 參數傳遞
目前;
}
// 滑桿自動前進的秒數:
var changeEvery = 10;
var itvl = setInterval(function(){autoAdvance()},changeEvery*1000);
/* 自訂結束 */
});
這是焦點圖的重點,完成了圖片的動畫邏輯,點擊一下即可切換圖片。

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

WebStorm Mac版
好用的JavaScript開發工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Dreamweaver CS6
視覺化網頁開發工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。