TOMOK
TOMOK
  • 发布:2016-09-09 00:37
  • 更新:2017-04-02 12:23
  • 阅读:2421

上下拉,列表页里点击事件就失效了,代码如下

分类:MUI

INIT里的那些关掉,点击事件就有用,打开,就失效

        <script type="text/javascript" charset="utf-8">  
            mui.init({  
                swipeBack:true //启用右滑关闭功能  
//              pullRefresh: {  
//                  container: '#pullrefresh',  
//                  down: {  
//                      callback: pulldownRefresh  
//                  },  
//                  up: {  
//                      contentrefresh: '正在加载...',  
//                      callback: pullupRefresh  
//                  }  
//              }  
            });  
            mui.ready(function() {  
                //点击列表  
                mui('#hqList').on('tap', 'a', function() {  
//                  console.log('点击了:' + this.innerText);  
                    console.log(this.id)  
                    mui.openWindow({  
                        url: 'bierenGongzi-detail.html',  
                        id: 'bierenGongzi-detail',  
//                      preload: true,  
                        extras: {  
                            txt: this.innerText  
                        }  
                    });  
                });  
            }); //mui.ready end       
            mui.plusReady(function() {  
                console.log('tab-webview-subpage-chat:plusready!')  
            }); //plus ready end  
            /**  
             * 下拉刷新具体业务实现  
             */  
            function pulldownRefresh() {  
                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  
                }, 1000);  
            }; //下拉刷新 end  
            var count = 0;  
            /**  
             * 上拉加载具体业务实现  
             */  
            function pullupRefresh() {  
                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);  
                    }  
                }, 1000);  

            }; //上拉加载end  

        </script>   
2016-09-09 00:37 负责人:无 分享
已邀请:
3***@qq.com

3***@qq.com

我也是 增加上啦加载功能后点击事件失效 ,安卓只有左侧小块才能点击, IOS则没事。安卓浏览器也不行。

seagatecm

seagatecm

我这也是一样。加上上拉刷新后,在pc上的浏览器运行,列表点击的消息正常。
但是在ios上运行,只有左侧很小一块区域点击才能响应。

1***@qq.com

1***@qq.com

下拉完成后给需要点击的事情绑定tap事件,我是用的web开发,希望有帮助

seagatecm

seagatecm

感谢回答,我加上事件绑定就好了:
mui('.mui-table-view').on('tap', 'li', onli);

不过还是觉得是个bug。因为pc浏览器没有问题,ios的浏览器有问题。

Trust

Trust - 少说废话

  • lingzhouyiyu

    希望解决一下,在微信和移动端浏览器里,使用了这个组件都会点击事件失效,更新了很多版本,就是不解决这个问题,楼上说的是可以,但是一个页面有很多点击事件处理起来就非常麻烦

    2018-09-20 14:54

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