`
zfq0714
  • 浏览: 16173 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

iscroll使用方法

阅读更多
var myScroll,
    pullDownEl, pullDownOffset,
    pullUpEl, pullUpOffset,
    generatedCount = 0;
 
/**
 * 下拉刷新 (自定义实现此方法)
 * myScroll.refresh(); 数据加载完成后,调用界面更新方法
 */
function pullDownAction () {
    setTimeout(function () {   
        var el, li, i;
        el = document.getElementById('thelist');
 
        for (i=0; i<3; i++) {
            li = document.createElement('li');
            li.innerText = 'Generated row ' + (++generatedCount);
            el.insertBefore(li, el.childNodes[0]);
        }
         
        myScroll.refresh();     //数据加载完成后,调用界面更新方法 
    }, 1000);  
}
 
/**
 * 滚动翻页 (自定义实现此方法)
 * myScroll.refresh();      // 数据加载完成后,调用界面更新方法
 */
function pullUpAction () {
    setTimeout(function () {    // <-- Simulate network congestion, remove setTimeout from production!
        var el, li, i;
        el = document.getElementById('thelist');
 
        for (i=0; i<3; i++) {
            li = document.createElement('li');
            li.innerText = 'Generated row ' + (++generatedCount);
            el.appendChild(li, el.childNodes[0]);
        }
         
        myScroll.refresh();     //数据加载完成后,调用界面更新方法
    }, 1000);  
}
 
/**
 * 初始化iScroll控件
 */
function loaded() {
    pullDownEl = document.getElementById('pullDown');
    pullDownOffset = pullDownEl.offsetHeight;
    pullUpEl = document.getElementById('pullUp');  
    pullUpOffset = pullUpEl.offsetHeight;
     
    myScroll = new iScroll('wrapper', {
        scrollbarClass: 'myScrollbar',
        useTransition: false,
        topOffset: pullDownOffset,
        onRefresh: function () {
            if (pullDownEl.className.match('loading')) {
                pullDownEl.className = '';
                pullDownEl.querySelector('.pullDownLabel').innerHTML = '下拉刷新...';
            else if (pullUpEl.className.match('loading')) {
                pullUpEl.className = '';
                pullUpEl.querySelector('.pullUpLabel').innerHTML = '上拉加载更多...';
            }
        },
        onScrollMove: function () {
            if (this.y > 5 && !pullDownEl.className.match('flip')) {
                pullDownEl.className = 'flip';
                pullDownEl.querySelector('.pullDownLabel').innerHTML = '松手开始更新...';
                this.minScrollY = 0;
            else if (this.y < 5 && pullDownEl.className.match('flip')) {
                pullDownEl.className = '';
                pullDownEl.querySelector('.pullDownLabel').innerHTML = '下拉刷新...';
                this.minScrollY = -pullDownOffset;
            else if (this.y < (this.maxScrollY - 5) && !pullUpEl.className.match('flip')) {
                pullUpEl.className = 'flip';
                pullUpEl.querySelector('.pullUpLabel').innerHTML = '松手开始更新...';
                this.maxScrollY = this.maxScrollY;
            else if (this.y > (this.maxScrollY + 5) && pullUpEl.className.match('flip')) {
                pullUpEl.className = '';
                pullUpEl.querySelector('.pullUpLabel').innerHTML = '上拉加载更多...';
                this.maxScrollY = pullUpOffset;
            }
        },
        onScrollEnd: function () {
            if (pullDownEl.className.match('flip')) {
                pullDownEl.className = 'loading';
                pullDownEl.querySelector('.pullDownLabel').innerHTML = '加载中...';               
                pullDownAction();   // ajax call
            else if (pullUpEl.className.match('flip')) {
                pullUpEl.className = 'loading';
                pullUpEl.querySelector('.pullUpLabel').innerHTML = '加载中...';               
                pullUpAction(); // ajax call
            }
        }
    });
     
    setTimeout(function () { document.getElementById('wrapper').style.left = '0'; }, 800);
}
 
//初始化绑定iScroll控件
document.addEventListener('touchmove'function (e) { e.preventDefault(); }, false);
document.addEventListener('DOMContentLoaded', loaded, false);
分享到:
评论

相关推荐

    iscroll4

    iscroll4是iscroll的一个早期版本,虽然可能没有最新版的功能丰富,但依然在许多项目中被广泛使用。 iscroll4的核心特性包括: 1. **高性能滚动**:iscroll4通过高效的事件处理和动画更新,确保在各种设备上的滚动...

    基于iScroll实现内容滚动效果

    一、iScroll简介 iScroll 是一款针对web app使用的滚动控件,它可以模拟原生IOS应用里的滚动列表操作,...二、iScroll使用方法 1.iScroll使用结构 最优化使用iScroll的结构一般如下所示: HTML: &lt;li&gt;&lt;/li&gt; ...

    iscroll.js下载 5.1.3最新版本

    4. **控制iscroll**:通过iscroll实例的方法,如`scrollTo`、`refresh`等,你可以手动控制滚动位置或刷新iscroll的状态。 iscroll的优点包括: - **高性能**:iscroll采用硬件加速技术,确保在各种设备上都能流畅...

    iscroll插件

    4. **实时刷新iscroll**:在数据加载完成后,使用`myScroll.refresh()`方法更新iscroll的状态。 iscroll作为一个强大的滚动解决方案,不仅简化了移动设备上滚动效果的实现,还为开发者提供了丰富的定制化选项和事件...

    iscroll5 滑动 滚动

    6. **销毁iscroll**:在不再使用iscroll时,应调用`destroy`方法释放资源。 **三、iscroll5的优化技巧** 1. **避免使用内联样式**:iscroll5可能与内联样式冲突,建议使用CSS类来设置样式。 2. **正确设置CSS属性...

    iscroll demo

    iscroll 的API主要涉及实例化、事件绑定、方法调用等。中文API地址:[http://www.gafish.net/api/iScroll.html](http://www.gafish.net/api/iScroll.html)。以下是一些关键API: - `new iScroll('wrapper', options...

    iScroll-5中文文档

    当不再需要iScroll的滚动功能时,可以通过销毁方法来移除所有与iScroll相关的事件处理器和定时器,以释放内存资源。 在开发过程中,如果遇到iScroll在某些特定平台或设备上出现兼容性问题,可以查阅iScroll的更新...

    jquery iscroll下拉插件

    本文将深入探讨jQuery iScroll下拉刷新插件的使用方法、原理及其实现细节。 首先,我们要理解jQuery iScroll是什么。iScroll是由Matteo Spinelli开发的一个JavaScript滚动库,它提供了一种优雅的方式来处理页面滚动...

    iscroll.js 用法demo

    创建`iscroll`实例是使用`iscroll`的第一步。你需要指定一个DOM元素作为滚动区域,并配置一些参数: ```javascript var myScroll = new IScroll('#wrapper', { scrollX: true, // 水平滚动 scrollY: true, // ...

    iScroll 4.2.5 中文API

    - 使用方法:可以使用`setTimeout`函数延迟初始化,确保页面资源加载完成: ```javascript &lt;script src="iscroll.js"&gt; var myScroll; function loaded() { setTimeout(function() { myScroll = new iScroll...

    iscroll v5.2.0最新demo下载

    4. **触发上拉刷新和下拉加载**:当用户执行上拉或下拉操作时,你可以手动触发iscroll的相应方法。 ```javascript myScroll.refresh(); // 刷新iscroll状态 myScroll.pullDownRefresh(); // 触发上拉刷新 ...

    iscroll分页滚动(加回到顶部)

    iscroll提供了`scrollTo`方法来实现这一点。通常,我们会在页面的某个角落(如右下角)放置一个返回顶部的按钮,当用户点击时,调用`scrollTo`方法将滚动位置设置为(0,0),即页面的最顶端。为了增加用户体验,还可以...

    iscroll适应IE8,9支持Mozilla浏览器

    4. **更新iscroll内容**:如果滚动区域的内容发生变化,需要调用`refresh`方法来更新iscroll的状态。 在提供的文件列表中,我们看到有以下几个部分: - `index.html`:这是网页的主体部分,包含了iscroll应用的...

    iscroll4例子

    **iscroll4详解** iscroll4是一款轻量级的...理解并熟练掌握iscroll4的使用方法和技巧,对于开发高效、流畅的移动端页面具有重要意义。通过不断的实践和优化,开发者能够充分发挥iscroll4的功能,打造优质的用户体验。

    iscroll4.js

    5. 在接收到服务器响应后,利用iscroll的API方法(如`refresh`或`scrollTo`)更新滚动状态。 在实际项目中,开发者可能还需要考虑性能优化,如延迟加载、按需加载等策略,以减少初始页面加载时间和内存占用。...

    iscroll5 不改动官方源码下拉刷新

    在IT行业中,iscroll5是一款广泛使用的轻量级滚动插件,特别适合处理移动设备上的滚动事件。这个项目“iscroll5 不改动官方源码下拉刷新”提供了一种方法,使得开发者能够在不修改iscroll5核心源码的前提下实现下拉...

    iscroll5.2.0--页面下拉刷新,上拉分页加载

    **iscroll5.2.0** 是一个轻量级、高性能的JavaScript滚动库,由Matteo Spinelli开发,主要用于解决...通过理解和掌握iscroll的使用方法,开发者可以轻松地为项目添加这些交互特性,同时保持页面的流畅性和响应性。

    iscroll开发多层滚动嵌套

    7. **实时更新**:如果滚动内容是动态加载的,iscroll提供了`refresh`方法来重新计算滚动区域的大小和内容,确保滚动行为的准确性。 综上所述,iscroll是一个强大的工具,能够帮助开发者实现复杂的滚动效果,尤其是...

    iScroll 5.1.1.zip

    iScroll是一种高性能,小体积,无依赖性,跨平台的JS滚动...*删除未使用的变量*在标签名称不区分大小写检查新功能*新的`off`方法来卸载自定义事件*添加`options.deceleration`改变的势头持续时间/速度*新增发行说明文件

Global site tag (gtag.js) - Google Analytics