html页面上拉刷新,jQuery实现的上拉刷新功能组件示例

本文介绍了使用jQuery创建上拉刷新功能的插件,详细讲解了插件的编写方法、上拉刷新的步骤,并提供了相应的CSS样式。文章还提供了一个实际的jQuery代码示例,帮助开发者实现页面的上拉刷新效果。
摘要由CSDN通过智能技术生成

本文实例讲述了jQuery实现的上拉刷新功能组件。分享给大家供大家参考,具体如下:

技术要点:

1、jQuery的插件写法

2、上拉刷新步骤分解

3、css样式

jQuery的插件写法:

$.fn.pluginName = function() {

return this.each(function () {

fn();

})

};

上拉刷新步骤分解:

上拉刷新可以分解成三个部分:一是开始(start),记录当前鼠标的位置;二是移动(move),根据下拉的位移响应不同的视图;三是结束(end),刷新页面。

;!function ($) {

"use strict";

var PTR = function (ele) {

this.container = $(ele);

this.container.addClass('pull-to-refresh');

this.distance = 60; // 设置参考的下拉位移

this.attachEvent();

};

// 判断是否有touch事件发生

var isTouch = (function () {

var isSupportTouch = !!'ontouchstart' in document || window.documentTouch;

return isSupportTouch;

})();

var touchEvents = {

start: isTouch ? 'touchstart': 'mousedown',

move: isTouch ? 'touchmove':'mousemove',

end: isTouch ? 'touchend': 'mouseup'

};

// 获取事件发生时相对于文档的距离(含滚动距离)

function getTouchPosition(e) {

var e = e.orinalEvent || e;

console.log(e)

if(e.type === 'touchstart' || e.type === 'touchmove' || e.type === 'touchend') {

return {

x: e.targetTouches[0].pageX,

y: e.targetTouches[0].pageY

}

}else {

return {

x: e.pageX,

y: e.pageY

}

}

};

PTR.prototype.touchStart = function (e) {

var p = getTouchPosition(e);

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值