r***@163.com
r***@163.com
  • 发布:2016-09-20 17:39
  • 更新:2016-09-20 17:39
  • 阅读:1684

上拉加载 _initPullupRefresh: function() { 报错

分类:MUI

_initPullupRefresh: function() {
this.pulldown = false;
this.pullPocket = this.bottomPocket; //this.bottomPocket == null
this.pullPocket.classList.add(CLASS_BLOCK);
this.pullPocket.classList.add(CLASS_VISIBILITY);
this.pullCaption = this.bottomCaption;
this.pullLoading = this.bottomLoading;
},

模仿pullrefresh_sub.html; pullrefresh_sub.html 运行正常
自己的页面包错,具体错误在 _initPullupRefresh: function(){}
第三行报错
经调试原因是第二行的 this.bottomPocket == null;
demo中的 pullrefresh_sub.html this.bottomPocket 是有值的

我的代码是 作为子页面嵌入到父页面的 div 中,代码如下:(没有<html> <body> 结构)

<div id="pullrefresh" class="mui-content mui-scroll-wrapper">  
            <div class="mui-scroll">  
                <!--数据列表-->  
                <ul class="mui-table-view mui-table-view-chevron">  

                </ul>  
            </div>  
        </div>  
<script>  
    mui.init({  
                pullRefresh: {  
                    container: '#pullrefresh',  
                    down: {  
                        callback: pulldownRefresh  
                    },  
                    up: {  
                        height:50,//可选.默认50.触发上拉加载拖动距离  
                        auto:true,//可选,默认false.自动上拉加载一次  
                        contentnomore:'没有更多数据了',//可选,请求完毕若没有更多数据时显示的提醒内容;  
                        contentrefresh: '正在加载...',  
                        callback: pullupRefresh  
                    }  
                }  
            });  
            /**  
             * 下拉刷新具体业务实现  
             */  
            function pulldownRefresh() {  
                alert("refresh");  
                setTimeout(function() {  
                    var table = document.body.querySelector('.mui-table-view');  
                    var cells = document.body.querySelectorAll('.mui-table-view-cell');  
                    for (var i = cells.length, len = i + 3; i < len; i++) {  
                        var li = document.createElement('li');  
                        li.className = 'mui-table-view-cell';  
                        li.innerHTML = '<a class="mui-navigate-right">Item ' + (i + 1) + '</a>';  
                        //下拉刷新,新纪录插到最前面;  
                        table.insertBefore(li, table.firstChild);  
                    }  
                    mui('#pullrefresh').pullRefresh().endPulldownToRefresh(); //refresh completed  
                }, 1500);  
            }  

            var count = 0;  
            /**  
             * 上拉加载具体业务实现  
             */  
            function pullupRefresh() {  
                alert("more");  
                setTimeout(function() {  
                    mui('#pullrefresh').pullRefresh().endPullupToRefresh((++count > 2)); //参数为true代表没有更多数据了。  
                    var table = document.body.querySelector('.mui-table-view');  
                    var cells = document.body.querySelectorAll('.mui-table-view-cell');  
                    for (var i = cells.length, len = i + 20; i < len; i++) {  
                        var li = document.createElement('li');  
                        li.className = 'mui-table-view-cell';  
                        li.innerHTML = '<a class="mui-navigate-right">Item ' + (i + 1) + '</a>';  
                        table.appendChild(li);  
                    }  
                }, 1500);  
            }  
            if (mui.os.plus) {  
                mui.plusReady(function() {  
                    setTimeout(function() {  
                        mui('#pullrefresh').pullRefresh().pullupLoading();  
                    }, 1000);  

                });  
            } else {  
                mui.ready(function() {  
                    mui('#pullrefresh').pullRefresh().pullupLoading();  
                });  
            }  
</script>
2016-09-20 17:39 负责人:无 分享
已邀请:

该问题目前已经被锁定, 无法添加新回复