茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

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

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

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

    名單

    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);

    當(dāng)然不要忘記在網(wǎng)頁中引用jQuery的相關(guān)庫文件。

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

    更多信息請查看網(wǎng)絡(luò)編程
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2026上岸·考公考編培訓(xùn)報班

    • 報班類型
    • 姓名
    • 手機號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報警專用圖標(biāo)