; (function ($) { $.extend({ 'foucs': function (con) { var $container = $('#index_b_hero') , $imgs = $container.find('li.hero') , $leftbtn = $container.find('a.prev') , $rightbtn = $container.find('a.next') , config = { interval: con && con.interval || 3500, animatetime: con && con.animatetime || 500, direction: con && (con.direction === 'right'), _imglen: $imgs.length } , i = 0 , getnextindex = function (y) { return i + y >= config._imglen ? i + y - config._imglen : i + y; } , getprevindex = function (y) { return i - y < 0 ? config._imglen + i - y : i - y; } , silde = function (d) { $imgs.eq((d ? getprevindex(2) : getnextindex(2))).css('left', (d ? '-1920px' : '1920px')) $imgs.animate({ 'left': (d ? '+' : '-') + '=960px' }, config.animatetime); i = d ? getprevindex(1) : getnextindex(1); } , s = setinterval(function () { silde(config.direction); }, config.interval); $imgs.eq(i).css('left', 0).end().eq(i + 1).css('left', '960px').end().eq(i - 1).css('left', '-960px'); $container.find('.hero-wrap').add($leftbtn).add($rightbtn).hover(function () { clearinterval(s); }, function () { s = setinterval(function () { silde(config.direction); }, config.interval); }); $leftbtn.click(function () { if ($(':animated').length === 0) { silde(false); } }); $rightbtn.click(function () { if ($(':animated').length === 0) { silde(true); } }); } }); }(jquery));