vue实现页面滚动到底部刷新


Posted in Javascript onAugust 16, 2019

本文实例为大家分享了vue实现页面滚动到底部刷新的具体代码,供大家参考,具体内容如下

h5页面 

<script>
    var app = new Vue({
      el: '#app',
      data: {
        swiper: null,
        carousel: [],
        promotion: [],
        cates: [],
        //设置size初始为10
        size:10,
      },
      mounted: function () {
        //定义that用that.size获取size的值
        var that=this;
        getPromotion();
        //秒表每秒请求一次
        setInterval(function(){
          //content是div类名
          const el = document.querySelector('.content');
          const offsetHeight = el.offsetHeight;
          el.onscroll = () => {
            const scrollTop = el.scrollTop;
            const scrollHeight = el.scrollHeight;
            if ((offsetHeight + scrollTop) - scrollHeight >= -1) {
              //每次滚动到底部size+10
              that.size+=10;
            }
          }
          $.ajax({
            type: "post",
            url: "/news/search",
            data: {intro: 'best', page: 1, size: that.size},
            dataType: 'json',
            success: function (data) {
              $.hideIndicator();
              if (data.errCode === 1) {
                app.promotion = data.data.articleList;
                // console.log(222);
              } else {
                $.toast(data.errMsg);
              }
            }
          });
        },10*60);
        // window.addEventListener('scroll', this.scrollBottom());
      },
      methods: {
        goDetail: function (id) {
          location.href = '/news/newsDetail/' + id;
        },
 
 
      },
 
    });
    //第一次加载先获取10条
    function getPromotion() {
      $.ajax({
        type: "post",
        url: "/news/search",
        data: {intro: 'best', page: 1, size: 10},
        dataType: 'json',
        success: function (data) {
          $.hideIndicator();
          if (data.errCode === 1) {
            app.promotion = data.data.articleList;
            // console.log(data);
          } else {
            $.toast(data.errMsg);
          }
        }
      });
      $.showIndicator();
    }


</script>

后台控制器

public function search()
  {
    $parm = array('act' => 'search');
    if (!empty($_POST['catId'])) $parm['catId'] = $_POST['catId'];
    if (!empty($_POST['keyword'])) $parm['keyword'] = $_POST['keyword'];
    if (!empty($_POST['intro'])) $parm['intro'] = $_POST['intro'];
    if (!empty($_POST['order'])) $parm['order'] = $_POST['order'];
    if (!empty($_POST['sort'])) $parm['sort'] = $_POST['sort'];
    if (!empty($_POST['page'])) $parm['page'] =1;
    //获取前台传过来的size值如果不为空就设置请求接口时多一个size参数
    if (!empty($_POST['size'])) $parm['size'] = $_POST['size'];
    //调用接口
    $data = $this->http('service/article.php', $parm);
    echo json_encode($data);
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript正则表达式中参数g(全局)的作用
Nov 11 Javascript
5分钟理解JavaScript中this用法分享
Nov 09 Javascript
一个简单的全屏图片上下打开显示网页效果示例
Jul 08 Javascript
JavaScript中使用arguments获得函数传参个数实例
Aug 27 Javascript
javascript 应用小技巧方法汇总
Jul 05 Javascript
Javascript中replace()小结
Sep 30 Javascript
解决JS请求服务器gbk文件乱码的问题
Oct 16 Javascript
浅谈React和Redux的连接react-redux
Dec 04 Javascript
JavaScript中变量、指针和引用功能与操作示例
Aug 04 Javascript
在vue中实现禁止回退上一步,路由不存历史记录
Jul 22 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
Nov 20 Javascript
React如何创建组件
Jun 27 Javascript
vue-mugen-scroll组件实现pc端滚动刷新
Aug 16 #Javascript
JavaScript的查询机制LHS和RHS解析
Aug 16 #Javascript
jquery树形插件zTree高级使用详解
Aug 16 #jQuery
微信小程序云开发如何实现数据库自动备份实现
Aug 16 #Javascript
jQuery zTree树插件的使用教程
Aug 16 #jQuery
Vue 权限控制的两种方法(路由验证)
Aug 16 #Javascript
JS中的算法与数据结构之列表(List)实例详解
Aug 16 #Javascript
You might like
利用PHP和AJAX创建RSS聚合器的代码
2007/03/13 PHP
php长字符串定义方法
2012/07/12 PHP
PHP面向对象五大原则之单一职责原则(SRP)详解
2018/04/04 PHP
JS TextArea字符串长度限制代码集合
2012/10/31 Javascript
js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS
2013/11/18 Javascript
JS实现仿腾讯微博无刷新删除微博效果代码
2015/10/16 Javascript
如何防止JavaScript自动插入分号
2015/11/05 Javascript
详解Node.js 命令行程序开发教程
2017/06/07 Javascript
浅谈Vue 初始化性能优化
2017/08/31 Javascript
jQuery选择器之层次选择器用法实例分析
2019/02/19 jQuery
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
2019/05/17 Javascript
js的Object.assign用法示例分析
2020/03/05 Javascript
Vue中 axios delete请求参数操作
2020/08/25 Javascript
[02:46]2014DOTA2国际邀请赛 选手为你解读比赛MVP充满梦想
2014/07/09 DOTA
Python 'takes exactly 1 argument (2 given)' Python error
2016/12/13 Python
正确理解python中的关键字“with”与上下文管理器
2017/04/21 Python
Python环境搭建之OpenCV的步骤方法
2017/10/20 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
详解python 3.6 安装json 模块(simplejson)
2019/04/02 Python
深入浅析Python科学计算库Scipy及安装步骤
2019/10/12 Python
python Pillow图像处理方法汇总
2019/10/16 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
没编程基础可以学python吗
2020/06/17 Python
Python Tornado核心及相关原理详解
2020/06/24 Python
飞利浦比利时官方网站:Philips比利时
2016/08/24 全球购物
工作自荐信
2013/12/11 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
财务工作疏忽检讨书
2014/09/11 职场文书
校长师德师风自我剖析材料
2014/09/29 职场文书
Python文件的操作示例的详细讲解
2021/04/08 Python
Nginx速查手册及常见问题
2022/04/07 Servers
SpringBoot集成MongoDB实现文件上传的步骤
2022/04/18 MongoDB
python中的random模块和相关函数详解
2022/04/22 Python
Mysql的Table doesn't exist问题及解决
2022/12/24 MySQL