web app iscroll

第一次在页面里正好iscroll5失败,容器始终不能滚动,所以用原生方式写了一段

  var timer, str = "";
      $(window).on('touchmove', function() {
        console.log($(".comment").css("style") == "block")
        if ($(".comment").css("display") == "block") {
          clearTimeout(timer);
          timer = setTimeout(function() {
            if ($(window).height() + $(window).scrollTop() >= $("body").height()) {
              $.ajax({
              url: 'js/data.json',
              dataType: 'json',
              success: function(e) {
                var data = e.events;
                for (var i = 0; i < data.length; i++) {
                  str += '<li><div class="user-info"><img src="' + data[i].src + '" class="user-pic">' + '<div class="name">' + data[i].name + '</div>' + '<div class="time"><i class="' + data[i].love + ' ico-s"></i><span>' + data[i].time + '</span></div>' + '</div><div class="user-comment"><p>' + data[i].content + '</p></div></li>'
                }
                $("#thelist").append(str)
                }
              });
        }}, 300)
        }})

后来去看了iscroll4的资料,发现用原生的写有很多用户体验需要改进,之后发现是容器少了一个position:absoulte定位导致JS不生效,所以又基于iscroll5写了个demo

  var myScroll =function(el,callback,options){
        var pullStart,maxY=0;
        this.init = function(){
           var myScroll = new IScroll(el,{});
           myScroll.on('scrollStart', function () {
             $(".pull-action").html("数据加载中……");
           })
        myScroll.on('scrollEnd', function () {
           maxY=Math.min(maxY,myScroll.y);
           if ( (this.directionY == 1) && myScroll.y < 0 && (maxY >= myScroll.y)){
              console.log(myScroll.y+","+maxY+","+myScroll.y)
              callback();
              setTimeout(function () {
                  myScroll.refresh();
              }, 100);
              $(".pull-action").html("下拉加载更多")
           }
        })
        }
    }
    $(function(){

      var scroll= new myScroll("#wrapper",handlePullDown);
      scroll.init()
      function handlePullDown() {
          var str="";
          for (var i = 0; i < 10; i++) {
            str += '<li>111111111111</li>'
          }
          $("#wrapper ul").append(str)
      }

    })
    document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);

详情请查看http://download.youkuaiyun.com/detail/yxq198514/8616459

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值