demo.html 6.57 KB
<div id="nhorilist" class="page out" data-title="横向列表">
    <div class="page-content" id="nhorilist_content">
        <div id="nhorilist-header"></div>
        <div id="nhorilist-a" ></div>
    </div>
</div>
<script>
    require(["mUtil", "NavHeader", "NHoriList"], function (mUtil, NavHeader, NHoriList) {
        var _u = require("mUtil");
        var hasClsPicker = typeof clsPicker !== "undefined";

        if(!hasClsPicker) {
            new NavHeader({
                el: "nhorilist-header",
                container: "#nhorilist",
                option: {
                    fixed: true,
                    title: "横向列表插件",
                    smallTitle: "nhorilist"
                }
            }).render();
        }

        new NHoriList({
            el: "nhorilist-a",
            option: {
                dataSource: {
                    type: 'mock',//数据来源类型:cube/mock/url/api四种
                    searchid: -999,
                    mockData: [
                      { "id": "1", "name": "杨文元", "age": "43", "birthday": "1976-02-20"},
                      { "id": "2", "name": "刘长庚", "age": "45", "birthday": "1978-03-26"},
                      { "id": "3", "name": "付蕾", "age": "34", "birthday": "1985-08-09"}
                    ],
                    urlConfig: {
                        path: '/mobilemode/mobile/demo/plugin/NHoriList/data.jsp',
                        formats: {
                            DATAS: "datas",
                            TOTAL_SIZE: "totalSize",
                            STATUS_CODE: {
                                key: "",
                                value: ""
                            },
                            ERROR_MSG: ""
                        }
                    },
                    apiConfig: {
                        api: {
                            id: "4ff3c2114b484c9b888c32554c38cc7b",
                            name: "文档列表"
                        },
                        request: {
                            params: {
                                query: [
                                    {name: "categoryid", value: ""},
                                    {name: "searchKey", value: "{search_key}"},
                                    {name: "pageNo", value: "{page_no}"},
                                    {name: "pageSize", value: "{page_size}"}
                                ],
                                body: {}
                            },
                            path: "/X-WEV-DocList",
                            type: "GET"
                        },
                        response: {
                            type: "HTML",
                            formats: {
                                DATAS: "datas",
                                TOTAL_SIZE: "totalSize",
                                STATUS_CODE: {
                                    key: "status",
                                    value: 1
                                },
                                ERROR_MSG: "errMsg"
                            }
                        }
                    },
                },
                pageSize: !hasClsPicker ? 10 : 3,
                showSet: {
                    common: {//通用,但是建模查询不适用,可单独为每种类型指定view,类型详见dataSource的type字段
                        imgfield: '<img class="resourceimage" src="/messager/images/icon_m_wev8.jpg" />',
                        titlefield: '{name}',
                        otherfields: [
                            '年龄:{age}',
                            '生日:{birthday}'
                        ]
                    },
                    cube: {
                        imgfield : {fieldid : 6544, fielddesc : "图片上传"},
                        titlefield : {fieldid : 6528, fielddesc : "单行文本框"},
                        otherfields : [
                            [{fieldid : 6534, fielddesc : "人力资源浏览框"}],
                            [{fieldid : -1, fielddesc : "{rlzyllk}"}]
                        ]
                    },
                    url: {
                        imgfield: "<img src='{avatar}' style='width:40px;height:40px;border-radius:40px;'/>",
                        titlefield: "{title}",
                        otherfields: [
                            "内容:{content}",
                            "分类:{cat}",
                            "日期:{date}"
                        ]
                    },
                    api: {
                        imgfield: "",
                        titlefield: "{subject}",
                        otherfields: [
                            "{owner}, {createtime}"
                        ]
                    }
                },
                options: {
                    readonly: false
                },
                callback: {
                    click : function(data){
                        $u("/mobilemode/mobile/demo/plugin/NHoriList/detail.html?billid="+data.id, true);
                    }
                },
                onload: function() {
                    var _u = require("mUtil");
                    var hasClsPicker = typeof clsPicker !== "undefined";

                    if(!hasClsPicker) return;
                    
                    _u.vetically("#nhorilist-a");

                    clsPicker.golalSetting({
                        container: ".wev-comp-NHoriList",
                        type: "NHoriList"
                    });

                    new clsPicker({
                        selector: "li .wev-media-object",
                        text: ".wev-media-object",
                        lineYSkew: 80,
                        angle: 80,
                        height: 300,
                        position: "bottom right"
                    });
                    new clsPicker({
                        selector: "li .wev-nowrap",
                        text: ".wev-nowrap",
                        skew: [50, ""],
                        angle: 80,
                        lineYSkew: 50,
                        height: 300,
                        position: "bottom right"
                    });

                    new clsPicker({
                        selector: ".wev-table-view-cell",
                        text: ".wev-table-view-cell",
                        skew: [1.1, 10],
                        angle: 80,
                        lineYSkew: 30,
                        position: "bottom left"
                    });
                }
            }
        }).render();
    });
</script>