国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

分頁(yè)模塊

hss01248 / 2992人閱讀

摘要:其中表示總的頁(yè)碼數(shù),效果如下圖效果圖如下二代碼部分部分首頁(yè)上一頁(yè)下一頁(yè)尾頁(yè)函數(shù)調(diào)用上下文,默認(rèn)情況下為部分三使用示例模板頁(yè)面控制器首先初始化然后在渲染和倆函數(shù)的參數(shù)見代碼部分注釋

一 功能描述

先貼上最終的效果圖:

首頁(yè)/尾頁(yè)/上一頁(yè)/下一頁(yè) 的功能就不用我具體解釋了吧:)

中間固定顯示11個(gè)頁(yè)碼(這個(gè)數(shù)字是用下面代碼中的常量DISPLAY_NUM決定的),根據(jù)點(diǎn)擊的頁(yè)碼數(shù)字 a ,分頁(yè)的變化情況有三種:

(1) 1 <=a <= 5 ,顯示效果如上圖所示。
(2) 6 <=a <= l-4, 其中l(wèi)表示總的頁(yè)碼數(shù),效果如下圖:
(3) l-4 <=a <= l, 效果圖如下:

二 代碼

html 部分

js 部分

define([],function(){
    var tpl = "
                
                    {{#total_arr}}
                    {{num}}
                    {{/total_arr}}
                
", default_event_handlers = { to_page: function (e, cur) { return true; }, prev_page: function (e, cur) { return true; }, next_page: function (e, cur) { return true; }, first_page: function (e, cur) { return true; }, last_page: function (e, cur) { return true; } }, DISPLAY_NUM = 11, pages = { /** * * @param {type} opt * { * wrp * that: event_handlers函數(shù)調(diào)用上下文,默認(rèn)情況下為this * events: { "to_page": function(event, cur){}, "prev_page": function(evnet, cur){}, "next_page": function(event, cur){}, "first_page": function(event, cur){}, "last_page": function(event, cur){}, } * } * @returns {undefined} */ init: function(opt){ var event_handlers = $.extend({}, default_event_handlers, opt.events), _this = opt.that||this, _that = this; $(opt.wrp).on("click", ".pages .prev-page", function(e){ var before_p = $(this).closest(".pages").find(".cur").data("value"), total_p = $(this).siblings(".last-page").data("value"); before_p = parseInt(before_p); total_p = parseInt(total_p); if (before_p == 1) { return; } var cur = before_p - 1; event_handlers.prev_page.call(_this, e, cur); _that.render(cur, total_p); }).on("click", ".pages .next-page", function(e){ var before_p = $(this).closest(".pages").find(".cur").data("value"), total_p = $(this).next().data("value"); before_p = parseInt(before_p); total_p = parseInt(total_p); if (before_p == total_p) { return; } var cur = before_p + 1; event_handlers.next_page.call(_this, e, cur); _that.render(cur, total_p); }).on("click", ".pages .num", function(e){ var before_p = $(this).closest(".pages").find(".cur").data("value"), total_p = $(this).siblings(".last-page").data("value"), cur = $(this).data("value"); before_p = parseInt(before_p); total_p = parseInt(total_p); cur = parseInt(cur); if (before_p == cur) { return; } event_handlers.to_page.call(_this, e, cur); _that.render(cur, total_p); }).on("click", ".pages .first-page", function(e){ var before_p = $(this).closest(".pages").find(".cur").data("value"), total_p = $(this).siblings(".last-page").data("value"); before_p = parseInt(before_p); total_p = parseInt(total_p); if (before_p == 1) { return; } var cur = 1; event_handlers.first_page.call(_this, e, cur); _that.render(cur, total_p); }).on("click", ".pages .last-page", function(e){ var before_p = $(this).closest(".pages").find(".cur").data("value"), total_p = $(this).data("value"); before_p = parseInt(before_p); total_p = parseInt(total_p); if (before_p == total_p) { return; } var cur = total_p; event_handlers.last_page.call(_this, e, cur); _that.render(cur, total_p); }); }, /** * * @param {type} opt * total * cur * @returns {undefined} */ render: function(cur, total){ if (total == 0) { $(".pages").html(""); return; } var total_arr = this.set_total_array(total, cur), prev_d = (cur == 1) ? "disabled" : "", next_d = (cur == total) ? "disabled" : "", content = Mustache.render(tpl, { prev_d: prev_d, next_d: next_d, total_value: total, total_arr: total_arr }); $(".pages").html(content); }, set_total_array: function(total, current){ var total_arr = [], begin_index = 1, end_index = total, begin_threshold = Math.floor(DISPLAY_NUM/2), end_threshold = total + 1 - begin_threshold; if (total <= DISPLAY_NUM) { end_index = total; } else if (current <= begin_threshold) { end_index = DISPLAY_NUM; } else if (current >= end_threshold) { begin_index = total + 1 - DISPLAY_NUM; } else { begin_index = current - begin_threshold; end_index = current + begin_threshold; } for (var i = begin_index; i <= end_index; i++) { var item = {num: i, value: i}; if (current == i) { item.cur = "cur"; } total_arr.push(item); } return total_arr; }, }; return pages; });

css 部分

.pages{
    text-align: center;
    padding: 20px 0;

    .prev,.next {
        width: auto;
        background: transparent;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    a{
        display: inline-block;
        width: 18px;
        height: 18px;
        line-height: 18px;
        border-radius: 3px;
        text-align: center;
        color: #333;
        font-size: 14px;
        vertical-align: top;
        margin-right: 15px;
    }

    .cur{
        background-color: #3b9bf5;
        color: white;
        text-decoration: none;
        cursor: default;
    }

    .omit{
        margin: 0;
    }

    .clear-margin{
        margin-left: -15px;
    }

    .disabled{
        opacity: 0.6;
    }
}
三 使用示例

模板頁(yè)面

控制器

首先初始化:

然后在渲染:

initrender倆函數(shù)的參數(shù)見js代碼部分注釋

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/50820.html

相關(guān)文章

  • Django搭建個(gè)人博客:文章分頁(yè)

    摘要:隨著時(shí)間的推移加上勤奮的寫作,你的博客文章一定會(huì)越來(lái)越多。如果不進(jìn)行處理,可能同一個(gè)頁(yè)面會(huì)擠上成百上千的文章,不美觀不說(shuō),還降低了頁(yè)面的反應(yīng)速度。這個(gè)時(shí)候就需要對(duì)文章進(jìn)行分頁(yè)的處理。有疑問(wèn)請(qǐng)?jiān)诙刨惖膫€(gè)人網(wǎng)站留言,我會(huì)盡快回復(fù)。 隨著時(shí)間的推移(加上勤奮的寫作!),你的博客文章一定會(huì)越來(lái)越多。如果不進(jìn)行處理,可能同一個(gè)頁(yè)面會(huì)擠上成百上千的文章,不美觀不說(shuō),還降低了頁(yè)面的反應(yīng)速度。 這個(gè)時(shí)...

    stormgens 評(píng)論0 收藏0
  • react中后臺(tái)管理界面

    摘要:是一個(gè)用開發(fā)的一個(gè)企業(yè)級(jí)中后臺(tái)管理包含常用的業(yè)務(wù),組件,及數(shù)據(jù)流轉(zhuǎn)方案,前后端分離的開發(fā)方式,按業(yè)務(wù)劃分的目錄結(jié)構(gòu),可以大大提高我們的開發(fā)效率下面是整體的介紹,感興趣的同學(xué)可以去官網(wǎng)詳加了解。 dva-boot-admin 是一個(gè)用React開發(fā)的一個(gè)企業(yè)級(jí)中后臺(tái)管理UI,包含常用的業(yè)務(wù),組件,及數(shù)據(jù)流轉(zhuǎn)方案,前后端分離的開發(fā)方式,按業(yè)務(wù)劃分的目錄結(jié)構(gòu),可以大大提高我們的開發(fā)效率 下面...

    dongfangyiyu 評(píng)論0 收藏0
  • 分頁(yè)模塊

    摘要:其中表示總的頁(yè)碼數(shù),效果如下圖效果圖如下二代碼部分部分首頁(yè)上一頁(yè)下一頁(yè)尾頁(yè)函數(shù)調(diào)用上下文,默認(rèn)情況下為部分三使用示例模板頁(yè)面控制器首先初始化然后在渲染和倆函數(shù)的參數(shù)見代碼部分注釋 一 功能描述 先貼上最終的效果圖:showImg(https://segmentfault.com/img/bVOudg?w=688&h=53); 首頁(yè)/尾頁(yè)/上一頁(yè)/下一頁(yè) 的功能就不用我具體解釋了吧:)...

    王偉廷 評(píng)論0 收藏0
  • 分頁(yè)模塊

    摘要:其中表示總的頁(yè)碼數(shù),效果如下圖效果圖如下二代碼部分部分首頁(yè)上一頁(yè)下一頁(yè)尾頁(yè)函數(shù)調(diào)用上下文,默認(rèn)情況下為部分三使用示例模板頁(yè)面控制器首先初始化然后在渲染和倆函數(shù)的參數(shù)見代碼部分注釋 一 功能描述 先貼上最終的效果圖:showImg(https://segmentfault.com/img/bVOudg?w=688&h=53); 首頁(yè)/尾頁(yè)/上一頁(yè)/下一頁(yè) 的功能就不用我具體解釋了吧:)...

    golden_hamster 評(píng)論0 收藏0
  • 在Laravel外使用Eloquent(二)- 分頁(yè)問(wèn)題

    摘要:在上一篇在外使用一中我們演示了如何引入以及基本使用,但是如果細(xì)心的朋友肯定會(huì)發(fā)現(xiàn),當(dāng)你在使用來(lái)分頁(yè)的時(shí)候是會(huì)報(bào)錯(cuò)的。但是引入那個(gè)模塊同時(shí)它內(nèi)部依賴了的模塊,意味著為了一個(gè)分頁(yè)功能我們要裝好多東西。 在上一篇《在Laravel外使用Eloquent(一)》 中我們演示了如何引入Eloquent以及基本使用,但是如果細(xì)心的朋友肯定會(huì)發(fā)現(xiàn),當(dāng)你在使用paginate(15)來(lái)分頁(yè)的時(shí)候是會(huì)報(bào)...

    junfeng777 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<