var params = { count: "", pages: "", currentPage: "", element: "", callback: "", } function ztPageInit(params) { var count = params.count ? params.count : 10 var pages = params.pages ? params.pages : 10 var currentPage = params.currentPage ? params.currentPage : 1 var element = params.element var callback = params.callback intercept() let myPageEl = document.createElement("div") $(myPageEl).addClass("zt-page") $(element).append(myPageEl) // 鏋勯€犵粨鏋 let htmlStrArr = [] for (let i = 0; i < pages; i++) { htmlStrArr.push("
  • " + (i + 1) + "
  • ") } if (pages > 7) { htmlStrArr.splice( 5, htmlStrArr.length - 6, "
  • ...
  • " ) } htmlStr = htmlStrArr.join("") let pageHtmlStr = "
    涓婁竴椤袋/div>
    涓嬩竴椤袋/div>
    鍏辫" + count + "鏉狘/div>" // 娉ㄥ叆缁撴瀯 myPageEl.innerHTML = pageHtmlStr // 鏍囪榛樿椤 clickPageFun(currentPage, true) // 涓婁笅椤靛垏鎹簨浠舵敞鍐 let btns = document.querySelectorAll(element + " div") for(var i=0;i 7) { let newEl = "" if (page <= 4) { newEl = '
  • 1
  • 2
  • 3
  • 4
  • 5
  • ...
  • ' + pages + "
  • " } else if (page >= 5 && page < pages - 3) { newEl = '
  • 1
  • ...
  • ' + (page - 1) + '
  • ' + page + '
  • ' + (page + 1) + '
  • ...
  • ' + pages + "
  • " } else if (page >= pages - 3) { newEl = '
  • 1
  • ...
  • ' + (pages - 4) + '
  • ' + (pages - 3) + '
  • ' + (pages - 2) + '
  • ' + (pages - 1) + '
  • ' + pages + "
  • " } document.querySelector(element + " .zt-page .zt-page-group").innerHTML = newEl } // 鏍囨敞閫変腑椤 let pageCellELs = document.querySelectorAll( element + " .zt-page .zt-page-cell" ) for(var ind = 0;ind < pageCellELs.length; ind++){ console.log("鍒嗛〉111") var el = pageCellELs[ind] var text = $(el).text() if (text == page) { el.classList.add("zt-page-checked") } else { el.classList.remove("zt-page-checked") } } // pageCellELs.forEach(function (el) { // if (el.innerText == page) { // el.classList.add("zt-page-checked") // } else { // el.classList.remove("zt-page-checked") // } // }) forbidden(page) // 鍥炶皟鍝嶅簲 if (!init) { callback && callback(page) } } // 涓婁笅椤垫寜閽惎绂 function forbidden(page) { let prveEl = document.querySelector(element + " .zt-page .zt-page-prev") let nextEl = document.querySelector(element + " .zt-page .zt-page-next") if (page === 1) { prveEl.classList.add("zt-page-forbid") } else { prveEl.classList.remove("zt-page-forbid") } if (page == pages) { nextEl.classList.add("zt-page-forbid") } else { nextEl.classList.remove("zt-page-forbid") } } // 鍙傛暟妫€楠 function intercept() { if (!pages || pages === 0 || Math.floor(pages) != pages) { throw "zt-page涓璸ages蹇呴』鏄暣鏁颁笖涓嶄负0" pages = Math.floor(pages) } if ( !currentPage || currentPage === 0 || Math.floor(currentPage) !== currentPage ) { throw "zt-page涓璫urrentPage蹇呴』鏄暣鏁颁笖涓嶄负0" currentPage = Math.floor(currentPage) } if (!element) { throw "闇€瑕佹寚瀹氫竴涓垎椤靛櫒瀹瑰櫒" } if (document.querySelectorAll(element).length === 0) { throw element + "鍏冪礌涓嶅瓨鍦? } if (currentPage > pages) { throw "褰撳墠椤典笉瀛樺湪" } } }