中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

jQuery實現百葉窗焦點圖動畫效果代碼分享(附源碼下載)
來源:易賢網 閱讀:1062 次 日期:2016-07-20 15:26:11
溫馨提示:易賢網小編為您整理了“jQuery實現百葉窗焦點圖動畫效果代碼分享(附源碼下載)”,方便廣大網友查閱!

這篇文章主要介紹了jQuery實現百葉窗焦點圖動畫效果代碼分享(附源碼下載)的相關資料,需要的朋友可以參考下

這是一款基于jQuery的百葉窗焦點圖動畫,和之前介紹的CSS3百葉窗焦點圖動畫不同的是,它的兼容性更好,實用性更強,因為它是基于純jQuery的,基本上所有瀏覽器都能夠支持。焦點圖的圖片切換動畫是百葉窗的動畫方式,但也有幾種不同的百葉窗動畫,因此也不會覺得單調。

名單

HTML代碼

<div id="slider">

<img src="images/1.jpg" alt="腳本之家1" title="腳本之家大全" />

<img src="images/2.jpg" alt="腳本之家2" title="腳本之家大全" />

<img src="images/3.jpg" alt="腳本之家3" title="腳本之家大全" />

</div>

CSS代碼

#slider {

position: relative;

width: 600px;

overflow: hidden;

margin: 10px auto 30px auto;

}

#slider li {

position: absolute;

top: 0;

left: 0;

}

.caption {

opacity: 0.8;

background: #000;

height: 33px;

padding: 5px 0 0 0;

color: #fff;

text-align: center;

font: 25px/1 '微軟雅黑';

z-index: 200;

}

.prev-link, .next-link {

display: block;

width: 24px;

height: 24px;

background-repeat: no-repeat;

background-position: left top;

position: absolute;

bottom: 10px;

z-index: 300;

}

.prev-link {

left: 10px;

background-image: url(prev.png );

}

.next-link {

left: 40px;

background-image: url(next.png );

}

.circle {

display: block;

width: 16px;

height: 16px;

background: url(circle-empty.png ) no-repeat left top;

position: absolute;

bottom: 10px;

z-index: 300;

}

.circle-current {

background-image: url(circle-full.png );

}

JavaScript代碼

(function(a) { (function() {

var b = false;

var c = (/xyz/.test(function() {

xyz

})) ? (/\b_super\b/) : (/.*/);

this.Class = function() {};

Class.extend = function(h) {

var g = this.prototype;

b = true;

var f = new this();

b = false;

for (var e in h) {

if (typeof h[e] == "function" && typeof g[e] == "function" && c.test(h[e])) {

f[e] = (function(i, j) {

return function() {

var l = this._super;

this._super = g[i];

var k = j.apply(this, arguments);

this._super = l;

return k

}

})(e, h[e])

} else {

f[e] = h[e]

}

}

function d() {

if (!b && this.init) {

this.init.apply(this, arguments)

}

}

d.prototype = f;

d.constructor = d;

d.extend = arguments.callee;

return d

}

})();

a.fn.lateralSlider = function(b) {

var d = {

displayDuration: 2000,

animateDuration: 1500,

numColumns: 10,

transitions: "fade,slideUp,slideDown,slideLeft,slideRight,slideUpAndDown,slideLeftAndRight,fadeAndSlideUp,fadeAndSlideDown,fadeAndSlideLeft,fadeAndSlideRight,fadeSlideUpAndRight,fadeSlideDownAndLeft",

random: false,

hidePrevAndNextArrows: false,

hideSlideChooser: false,

captionOpacity: 0.8

};

var c = a.extend({},

d, b);

this.each(function() {

var j = a(this);

var t = Class.extend({

$imgs: null,

size: null,

displayImg: null,

nextImg: null,

numDivs: null,

divWidth: null,

baseCSS: null,

$divs: null,

transitions: [],

transition: null,

transitionCount: null,

interval: null,

width: null,

init: function() {

this.$imgs = a("img", j);

this.size = this.$imgs.size();

this.$imgs.hide();

this.nextImg = 0;

this.width = j.width();

this.numDivs = c.numColumns;

this.divWidth = this.width / this.numDivs;

this.baseCSS = {

width: this.divWidth,

position: "absolute",

top: 0,

backgroundRepeat: "no-repeat"

};

this.createDivs();

this.$divs = a("div", j);

this.transitionCount = -1

},

createDivs: function() {

for (var A = 0; A < this.numDivs; A++) {

var B = a("<div></div>");

B.css(this.baseCSS);

B.css("left", this.divWidth * A);

B.appendTo(j)

}

}

});

var y = new t();

var g = Class.extend({

baseDuration: null,

originalOffset: null,

offset: null,

init: function() {

this.baseDuration = c.animateDuration / 8;

this.originalOffset = 7 * c.animateDuration / (8 * y.numDivs);

this.offset = 7 * c.animateDuration / (8 * y.numDivs)

},

duration: function() {

return this.baseDuration + this.offset

},

increment: function() {

this.offset += this.originalOffset

},

reset: function() {

this.offset = this.originalOffset

},

getCSS: function(A) {

return {}

},

eachDiv: function() {

return {}

},

applyTransition: function() {

y.$divs.each(this.eachDiv);

this.reset()

}

});

var v = g.extend({

applyTransition: function() {

var A = this;

y.$divs.each(function() {

var B = A.eachDiv;

if (typeof(A.eachDiv) == "function") {

B = B()

}

a(this).animate(B, A.duration());

A.increment()

});

this.reset()

}

});

var m = v.extend({

getCSSIndex: null,

eachDivIndex: null,

getCSSGroup: null,

eachDivGroup: null,

init: function() {

this._super();

this.getCSSGroup = new Array();

this.eachDivGroup = new Array();

this.getCSSIndex = 0;

this.eachDivIndex = 0

},

getCSS: function(B) {

var A = this.getCSSGroup[this.getCSSIndex];

this.getCSSIndex = (this.getCSSIndex + 1) % this.getCSSGroup.length;

return A(B)

},

addTransition: function(A) {

this.getCSSGroup.push(A.getCSS);

this.eachDivGroup.push(A.eachDiv)

},

applyTransition: function() {

var A = this;

y.$divs.each(function() {

var B = A.eachDivGroup[A.eachDivIndex];

if (typeof(B) == "function") {

B = B()

}

a(this).animate(B, A.duration());

A.eachDivIndex = (A.eachDivIndex + 1) % A.eachDivGroup.length;

A.increment()

});

this.reset()

}

});

var u = v.extend({

getCSS: function(A) {

return {

opacity: 0

}

},

eachDiv: {

opacity: 1

}

});

var f = v.extend({

getCSS: function(A) {

return {

top: y.$imgs.eq(y.nextImg).height()

}

},

eachDiv: {

top: 0

}

});

var h = v.extend({

getCSS: function(A) {

return {

height: 0

}

},

eachDiv: function() {

return {

height: y.$imgs.eq(y.nextImg).height()

}

}

});

var r = v.extend({

getCSS: function(B) {

var A = B.css("left");

A = parseInt(A.substring(0, A.length - 2), 10);

return {

left: A + y.divWidth,

width: 0

}

},

eachDiv: {

left: "-=" + y.divWidth,

width: y.divWidth

}

});

var q = v.extend({

getCSS: function(A) {

return {

width: 0

}

},

eachDiv: {

width: y.divWidth

}

});

var o = m.extend({

addTransitions: function(A, B) {

this.addTransition(A);

this.addTransition(B)

}

});

var w = m.extend({

addTransitions: function(B, A) {

this.addTransition(B);

this.addTransition(A)

}

});

var k = m.extend({

addTransitions: function(A, B) {

this.addTransition(A);

this.addTransition(B)

}

});

var n = m.extend({

addTransitions: function(A, B) {

this.addTransition(A);

this.addTransition(B)

}

});

var p = m.extend({

addTransitions: function(A, B) {

this.addTransition(A);

this.addTransition(B)

}

});

var e = m.extend({

addTransitions: function(A, B) {

this.addTransition(A);

this.addTransition(B)

}

});

var x = m.extend({

addTransitions: function(A, C, B) {

this.addTransition(A);

this.addTransition(C);

this.addTransition(B)

}

});

var s = m.extend({

addTransitions: function(C, A, B) {

this.addTransition(C);

this.addTransition(A);

this.addTransition(B)

}

});

var z = {

fade: new u(),

slideUp: new f(),

slideDown: new h(),

slideLeft: new r(),

slideRight: new q(),

slideUpAndDown: new o(),

slideLeftAndRight: new w(),

fadeAndSlideUp: new k(),

fadeAndSlideDown: new n(),

fadeAndSlideLeft: new p(),

fadeAndSlideRight: new e(),

fadeSlideUpAndRight: new x(),

fadeSlideDownAndLeft: new s()

};

z.slideUpAndDown.addTransitions(z.slideUp, z.slideDown);

z.slideLeftAndRight.addTransitions(z.slideLeft, z.slideRight);

z.fadeAndSlideUp.addTransitions(z.slideUp, z.fade);

z.fadeAndSlideDown.addTransitions(z.fade, z.slideDown);

z.fadeAndSlideLeft.addTransitions(z.fade, z.slideLeft);

z.fadeAndSlideRight.addTransitions(z.slideRight, z.fade);

z.fadeSlideUpAndRight.addTransitions(z.slideUp, z.fade, z.slideRight);

z.fadeSlideDownAndLeft.addTransitions(z.slideDown, z.fade, z.slideLeft);

t.prototype.populateTransitions = function() {

var B = c.transitions.split(/,\s*/g);

for (var A in B) {

this.transitions.push(z[B[A]])

}

};

t.prototype.getTransition = function() {

if (c.random) {

var A = Math.floor(Math.random() * this.transitions.length);

return this.transitions[A]

} else {

this.transitionCount = (this.transitionCount + 1) % this.transitions.length;

return this.transitions[this.transitionCount]

}

};

t.prototype.addDivCSS = function() {

var B = this;

var C = B.$imgs.eq(B.nextImg);

var D = "url(" + C.attr("src") + ")";

var A = C.height();

this.$divs.each(function() {

var E = a(this);

E.css({

backgroundImage: D,

backgroundPosition: "-" + E.css("left") + " 0px",

height: A

});

E.css(B.transition.getCSS(E))

})

};

t.prototype.process = function() {

j.css({

backgroundImage: "url(" + this.$imgs.eq(this.displayImg).attr("src") + ")",

backgroundRepeat: "no-repeat"

});

this.transition = this.getTransition();

this.addDivCSS();

this.transition.applyTransition();

j.animate({

height: this.$imgs.eq(this.nextImg).height()

},

c.animateDuration);

this.advanceShow()

};

t.prototype.updateCurrent = function() {

a('.circle[rel="' + this.displayImg + '"]').removeClass("circle-current");

a('.circle[rel="' + this.nextImg + '"]').addClass("circle-current")

};

t.prototype.advanceShow = function() {

this.updateCurrent();

this.displayImg = this.nextImg;

if (this.nextImg == this.size - 1) {

this.nextImg = 0

} else {

this.nextImg++

}

};

t.prototype.startShow = function() {

this.interval = window.setInterval(a.proxy(this.runner, this), c.displayDuration + c.animateDuration)

};

t.prototype.stopShow = function() {

window.clearInterval(this.interval)

};

t.prototype.goToSlide = function(A) {

if (this.$divs.filter(":animated").size() > 0) {

return

}

this.stopShow();

this.nextImg = A;

this.updateCurrent();

this.runner();

if (this.nextImg == 0) {

this.displayImg = this.size - 1

} else {

this.displayImg = this.nextImg - 1

}

this.startShow()

};

t.prototype.applyLink = function() {

var C = this.$imgs.eq(this.displayImg);

var B = C.parent();

if (B.is("a")) {

B.removeAttr("style")

}

var A = this.$imgs.eq(this.nextImg);

var D = A.parent();

if (D.is("a")) {

D.css({

display: "block",

textDecoration: "none",

border: "0",

width: j.width(),

height: A.height(),

position: "absolute",

top: 0,

left: 0,

zIndex: 100

})

}

};

t.prototype.applyCaption = function() {

var A = this.$imgs.eq(this.nextImg);

var C = A.attr("title");

var D = a(".caption", j);

D.slideUp(function() {

a(this).html(C)

});

if (C != "") {

if (D.size() > 0) {

if (!D.is(":visible")) {

D.html(C)

}

D.slideDown()

} else {

var B = a('<div class="caption"><span>' + C + "</span></div>");

B.css({

opacity: c.captionOpacity,

width: j.width(),

position: "absolute",

top: 0,

left: 0,

display: "none"

});

B.appendTo(j);

B.slideDown()

}

}

};

t.prototype.runner = function() {

this.applyLink();

this.applyCaption();

this.process()

};

t.prototype.begin = function() {

var A = this.$imgs.eq(this.nextImg);

j.css({

backgroundImage: "url(" + A.attr("src") + ")",

height: A.height()

});

this.runner();

this.transitionCount--;

this.startShow()

};

var i = Class.extend({

circleCount: null,

init: function() {

this.circleCount = 0

},

addAll: function() {

this.addCircles();

this.addPrevAndNextLinks();

a("a.circle").click(this.circleClickHandler);

a(".prev-link").click(this.prevLinkHandler);

a(".next-link").click(this.nextLinkHandler);

if (c.hideSlideChooser) {

a("a.circle").hide()

}

if (c.hidePrevAndNextArrows) {

a(".prev-link, .next-link").hide()

}

},

addCircles: function() {

var A = this;

y.$imgs.each(function() {

var B = a('<a href="#" rel="' + A.circleCount + '" class="circle"></a>');

B.css({

right: (y.size - A.circleCount - 1) * 20 + 10

});

B.appendTo(j);

A.circleCount++

})

},

addPrevAndNextLinks: function() {

a('<a href="#" class="prev-link"></a>').appendTo(j);

a('<a href="#" class="next-link"></a>').appendTo(j)

},

circleClickHandler: function(B) {

var A = parseInt(a(this).attr("rel"), 10);

y.goToSlide(A);

B.preventDefault()

},

prevLinkHandler: function(B) {

var A = y.displayImg - 1;

if (A < 0) {

A = y.size - 1

}

y.goToSlide(A);

B.preventDefault()

},

nextLinkHandler: function(B) {

var A = y.displayImg + 1;

if (A >= y.size) {

A = 0

}

y.goToSlide(A);

B.preventDefault()

}

});

var l = new i();

l.addAll();

y.populateTransitions();

y.begin()

});

return this

}

})(jQuery);

當然不要忘記在網頁中引用jQuery的相關庫文件。

關于jQuery實現百葉窗焦點圖動畫效果代碼分享(附源碼下載)就給大家介紹到這里,希望對大家有所幫助!

更多信息請查看網絡編程
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
国产精品久久久久久久久婷婷 | 亚洲天堂网站在线观看视频| 亚洲免费播放| 中文网丁香综合网| 欧美一区二区三区在线| 欧美激情一区在线观看| 国产欧美一区二区三区沐欲| 亚洲福利视频三区| 午夜久久99| 欧美日韩亚洲不卡| 亚洲国产成人在线视频| 久久成人免费电影| 国产精品久久91| 亚洲精品美女| 欧美成人午夜激情| 国内精品美女av在线播放| 亚洲在线观看| 欧美日韩中文字幕在线视频| 亚洲韩国一区二区三区| 久久综合九色欧美综合狠狠| 国产亚洲人成a一在线v站| 午夜激情一区| 国产精品一区一区| 亚洲综合色在线| 国产精品久久久久9999| 亚洲视频axxx| 国产精品久久久久久av下载红粉| 一本色道久久88亚洲综合88| 欧美精品18+| 亚洲免费观看在线视频| 欧美理论电影网| 亚洲视频第一页| 国产精品私人影院| 销魂美女一区二区三区视频在线| 国产精品日韩高清| 久久精品国产亚洲一区二区三区| 国产欧美一区二区三区沐欲| 欧美专区在线观看一区| 国产综合av| 蜜臀久久99精品久久久久久9 | 国产九九视频一区二区三区| 亚洲一区二区精品在线观看| 国产精品免费久久久久久| 午夜亚洲伦理| 国产一区二区三区在线观看免费视频 | 欧美日韩性生活视频| 一区二区三区三区在线| 国产伦精品一区二区三区四区免费| 亚洲女同同性videoxma| 黑人巨大精品欧美一区二区小视频| 久久亚洲视频| 99re亚洲国产精品| 国产日韩欧美91| 欧美**字幕| 亚洲午夜免费视频| 国产一区高清视频| 欧美精品www| 欧美一区1区三区3区公司| 韩国一区二区在线观看| 欧美激情视频一区二区三区免费 | 欧美在线91| 亚洲激情自拍| 国产精品久久久久久亚洲调教| 亚洲欧美日韩一区在线| 国产欧美日韩一级| 欧美喷水视频| 欧美一区91| 一区二区三区国产在线| 国产偷国产偷精品高清尤物| 久久在线精品| 欧美一区二区三区久久精品茉莉花| 亚洲区国产区| 欧美日本国产一区| 久久久噜噜噜久久中文字免| 在线一区二区日韩| 在线观看不卡av| 国产精品麻豆va在线播放| 久久综合九色九九| 欧美一区二区三区电影在线观看| 亚洲日本中文字幕免费在线不卡| 国产伦精品一区二区三区| 欧美喷水视频| 欧美激情中文字幕一区二区| 久久成人人人人精品欧| 亚洲国产欧美日韩精品| 国产主播一区二区三区| 国产欧美在线观看| 欧美视频手机在线| 欧美日韩一区二区三区| 免费日韩成人| 美国成人毛片| 蜜臀久久99精品久久久画质超高清| 亚洲免费中文| 午夜欧美精品久久久久久久| 亚洲综合日韩在线| 亚洲欧美视频在线| 午夜精品久久久久久久99樱桃 | 国产精品欧美日韩一区二区| 欧美紧缚bdsm在线视频| 欧美大色视频| 欧美激情中文字幕一区二区| 欧美福利视频在线观看| 欧美国产免费| 欧美日韩精品系列| 欧美视频一区| 国产伦精品一区二区三区高清版 | 亚洲综合另类| 亚洲欧美日韩另类| 欧美在线视频免费| 久久久久成人精品| 女主播福利一区| 欧美日韩国产丝袜另类| 欧美日韩亚洲高清| 国产精品久久夜| 国产日产欧美一区| 影音先锋亚洲电影| 亚洲精选成人| 亚洲欧美成人一区二区在线电影| 香蕉国产精品偷在线观看不卡 | 亚洲国产精品一区二区久 | 国产精品亚洲一区| 国产午夜精品一区理论片飘花| 国产欧美日韩精品专区| 韩国av一区二区三区| 亚洲国产岛国毛片在线| 99这里只有精品| 久久国产精品第一页| 欧美激情免费在线| 国产精品久久久久一区二区三区共| 国产精品久久夜| 亚洲大黄网站| 亚洲欧美日韩国产一区二区| 久久久久九九九九| 欧美午夜精品久久久久免费视| 国产精品日日摸夜夜添夜夜av| 韩国精品一区二区三区| 一本色道久久综合亚洲91| 久久精品中文| 欧美视频一区在线| 亚洲高清免费在线| 欧美一区二区三区免费视| 欧美—级在线免费片| 国产日韩欧美在线看| 99爱精品视频| 噜噜噜噜噜久久久久久91 | 欧美日本在线一区| 国产婷婷色一区二区三区在线 | 国产精品久久波多野结衣| 国产午夜精品久久久久久免费视| 最新国产の精品合集bt伙计| 午夜精品久久久久久久白皮肤 | 亚洲欧美精品suv| 欧美大片91| 一区二区三区在线观看国产| 亚洲一区二区成人| 欧美日韩国产精品成人| 韩日欧美一区二区三区| 午夜精品成人在线| 国产精品午夜视频| 一区二区免费在线播放| 欧美国产日韩在线观看| 亚洲国产一区二区三区在线播| 久久国产精品一区二区| 国产精品高清在线| 99在线|亚洲一区二区| 麻豆九一精品爱看视频在线观看免费| 国产精一区二区三区| 亚洲午夜在线| 国产精品每日更新| 在线亚洲电影| 欧美午夜在线视频| 亚洲午夜一区二区| 欧美午夜免费电影| 亚洲欧美美女| 国产一本一道久久香蕉| 午夜国产精品视频| 国产精品免费观看在线| 亚洲一级黄色片| 国产精品入口尤物| 性18欧美另类| 黑人巨大精品欧美一区二区| 久久久国产91| 亚洲电影网站| 欧美高清视频在线播放| 亚洲精品孕妇| 欧美午夜精品理论片a级大开眼界| 日韩亚洲成人av在线| 欧美久久精品午夜青青大伊人| 亚洲人妖在线| 欧美喷潮久久久xxxxx| 一区二区三区高清在线观看| 国产精品a久久久久| 亚洲欧美另类综合偷拍| 国内精品久久久久久久影视麻豆| 日韩视频免费| 欧美精品一区二区视频| 午夜激情久久久| 1769国内精品视频在线播放| 欧美日韩播放| 一区二区欧美亚洲|