/* * jquery-runbanner * Copyright (c) 2013 Nicky Yan 个人网:站http://www.chinacoder.cn QQ:525690001 * Date: 2013-06-02 * 使用jquery-runbanner可以很方便的实现响应式通栏banner,支持各种移动web */ (function(c) { var a = ["rollIn", "fadeIn", "fadeInUp", "fadeInDown", "fadeInLeft", "fadeInRight", "fadeInRight", "bounceIn", "bounceInDown", "bounceInUp", "bounceInLeft", "bounceInRight", "rotateIn", "rotateInDownLeft", "rotateInDownRight", "rotateInUpLeft", "rotateInUpRight"]; var b = a.length; c.fn.runbanner = function(h) { var A = { className: "oneByOne", sliderClassName: "oneByOne_item", easeType: "fadeInLeft", width: 960, height: 420, delay: 300, tolerance: 0.25, enableDrag: true, showArrow: true, showButton: true, slideShow: false, slideShowDelay: 3000 }; if (h) { c.extend(A, h) } var o; var v; var C = -1; var z = A.width; var f = A.height; var r = 0; var l = false; var D = false; var t = []; var x; var e = []; var n = 0; var w = 0, m, u, q; v = this; v.wrap('
'); o = v.parent(); o.css("overflow", "hidden"); v.find("." + A.sliderClassName).each(function(i) { c(this).hide(); n++; c(this).css("left", z * i); e[i] = c(this) }); v.bind("touchstart", function(i) { i.preventDefault(); var E = i.originalEvent.touches[0] || i.originalEvent.changedTouches[0]; if (!l) { l = true; this.mouseX = E.pageX } if (u) { u.fadeIn() } if (q) { q.fadeIn() } return false }); v.bind("touchmove", function(i) { i.preventDefault(); var E = i.originalEvent.touches[0] || i.originalEvent.changedTouches[0]; if (l) { r = E.pageX - this.mouseX; v.css("left", -C * z + r); if (A.slideShow) { g() } } return false }); v.bind("touchend", function(E) { var i = C; E.preventDefault(); var H = E.originalEvent.touches[0] || E.originalEvent.changedTouches[0]; l = false; if (!r) { return false } var F = parseInt(A.width); var G = F / 2; if ( - r > G - F * A.tolerance) { i++; i = i >= n ? n - 1 : i; s(i) } else { if (r > G - F * A.tolerance) { i--; i = i < 0 ? 0 : i; s(i) } else { s(i); if (A.slideShow) { d() } } } r = 0; if (u) { u.delay(400).fadeOut() } if (q) { q.delay(400).fadeOut() } return false }); if (A.enableDrag) { v.mousedown(function(i) { if (!l) { l = true; this.mouseX = i.pageX } return false }); v.mousemove(function(i) { if (l) { r = i.pageX - this.mouseX; v.css("left", -C * z + r); if (A.slideShow) { g() } } return false }); v.mouseup(function(E) { l = false; var i = C; if (!r) { return false } var F = parseInt(A.width); var G = F / 2; if ( - r > G - F * A.tolerance) { i++; i = i >= n ? n - 1 : i; s(i) } else { if (r > G - F * A.tolerance) { i--; i = i < 0 ? 0 : i; s(i) } else { s(i); if (A.slideShow) { d() } } } r = 0; return false }); v.mouseleave(function(i) { c(this).mouseup() }) } o.mouseover(function(i) { if (u) { u.fadeIn() } if (q) { q.fadeIn() } }); o.mouseleave(function(i) { if (u) { u.fadeOut() } if (q) { q.fadeOut() } }); if (A.showButton) { m = c(''); o.append(m); u = m.find(".buttonCon"); for (var y = 0; y < n; y++) { u.append('' + (y + 1) + "").css("cursor", "pointer") } c(".buttonCon a:eq(" + C + ")", m).addClass("active"); c(".buttonCon a", m).bind("click", function(E) { if (c(this).hasClass("active")) { return false } var i = c(this).attr("rel"); s(i) }) } if (A.showArrow) { q = c('