!(function (global, $, factory) { typeof exports == "object" && typeof module != "undefined" ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : (global.LandscapeSlider = factory()); })(this, jQuery, function () { var LandscapeSlider = function (options) { if (!(this instanceof LandscapeSlider)) { console.log("LandscapeSlider 是一个构造函数,应该用new关键字调用"); return; } var _DEFALUTS_ = { g_bMoveLeft: true, g_oTimer: null, g_oTimerOut: null, g_bPause: true, g_iPauseTime: 1000, g_iSpeed: 2, id: "", limit: 0 } $.extend(true, _DEFALUTS_, options || {}); var oDiv = document.getElementById(_DEFALUTS_.id); if (!oDiv) return; var oUl = oDiv.getElementsByTagName('ul')[0]; var aLi = oDiv.getElementsByTagName('li'); // var liHeight=$(aLi[0]).outerHeight(true)); if (_DEFALUTS_.limit != 0) { if (aLi.length <= _DEFALUTS_.limit) { return; } } var i = 0; var str = oUl.innerHTML + oUl.innerHTML; oUl.innerHTML = str; //oUl.style.height = $(aLi[0]).outerHeight(true) * aLi.length + 'px'; oUl.style.width=$(aLi[0]).outerWidth(true)*aLi.length+'px'; for (i = 0; i < aLi.length; i++) { aLi[i].onmouseover = function () { stopMove(); }; aLi[i].onmouseout = function () { startMove(_DEFALUTS_.g_bMoveLeft); }; } startMove(true); function startMove(bLeft) { _DEFALUTS_.g_bMoveLeft = bLeft; if (_DEFALUTS_.g_oTimer) { clearInterval(_DEFALUTS_.g_oTimer); } _DEFALUTS_.g_oTimer = setInterval(doMove, 30); } function stopMove() { clearInterval(_DEFALUTS_.g_oTimer); _DEFALUTS_.g_oTimer = null; } function doMove() { var oDiv=document.getElementById(_DEFALUTS_.id); var oUl=oDiv.getElementsByTagName('ul')[0]; var aLi=oUl.getElementsByTagName('li'); var l=oUl.offsetLeft; if(_DEFALUTS_.g_bMoveLeft) { l-=_DEFALUTS_.g_iSpeed; if(l<=-oUl.offsetWidth/2) { l+=oUl.offsetWidth/2; } } else { l+=_DEFALUTS_.g_iSpeed; if(l>=0) { l-=oUl.offsetWidth/2; } } if(_DEFALUTS_.g_bPause) { if(Math.abs(l-Math.round(l/aLi[0].offsetWidth)*aLi[0].offsetWidth)