自动滚动高度计算

        var off_height = $(".mui-scroll").offset().top; //滑动区域具体屏幕顶部距离
        off_height = 120;
        //以下所说的高度,起点都是滑动区域的起点,不是屏幕顶端
        // var slid_height = $(window).height() - off_height; //获取滑动区域的高度
        var slid_height = $(document).height() - off_height; //获取滑动区域的高度

        var middle_height = slid_height / 2; //当前滑动区域的一半高度
        // alert($("ul.topList li").eq(5).offset().top);
        // alert('middle'+middle_height);
        var li_height = $("ul.mui-table-view li")
          .eq(mp3.getIndex())
          .height();
        var now_height =
          $("ul.mui-table-view li")
            .eq(mp3.getIndex())
            .offset().top - off_height; //获取当前li的高度
        // alert('liheight'+li_height);
        // alert('now'+now_height);
        var last_height =
          $("ul.mui-table-view li")
            .eq(mp3.getPageSize() - 1)
            .offset().top - off_height; //获取最后一个li的高度
        var move_height = now_height - middle_height + li_height; //每次滑动的距离
        // console.log("li height" + li_height);
        // console.log(
        //   "li height_top" +
        //     now_height +
        //     "|last_height" +
        //     last_height +
        //     "|move_height" +
        //     move_height +
        //     "|slid_height" +
        //     slid_height
        // );
        // console.log(now_height > middle_height);
        // console.log(last_height > slid_height);
        // totalheight++;
        // mui("#pullrefresh")
        //   .pullRefresh()
        //   .scrollTo(0, -li_height * totalheight);
        // totalheight += move_height;
        totalheight += li_height;
        //如果当前高度大于滑动区域的一半,并且最后一个元素的高度大于滑动区域的高度
        if (
          now_height > middle_height &&
          last_height + li_height > slid_height
        ) {
          // $(".inner").css('transform','translate(0px, -'+move_height+'px)');
          // window.scroll(0, move_height);

          mui("#pullrefresh")
            .pullRefresh()
            .scrollTo(0, -totalheight);
        }

  

转载于:https://www.cnblogs.com/blueskycc/p/8430284.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值