Scroller

这个插件同意你创建一个可滚动区域。我们使用的JavaScript滚轮,除非该设备支持 - WebKit的溢出卷轴:触摸。它有很多修复Android版<3和iOS原生的滚动。

创建:

2
$(selector).scroller({})//create
$(selector).scroller()//get
the scroller object

属性:

Attributes

1
2
3
4
5
6
7
8
9
10
11
scrollbars                  
(bool) ID of DOM elemenet
forthe
popup container
verticalScroll              
(bool) 同意vertical scrolling
horizontalScroll            
(bool) 同意horizontal scrolling
useJsScroll                 
(bool) 是否同意 JavaScript scroller
lockBounce                  
(bool) Prevent the rubber band effect
autoEnable                  
(bool) 自己主动启用滚动栏
refresh                     
(bool) 上拉刷新
infinite                    
(bool) 启用无限滚动
initScrollProgress          
(bool) Dispatch progress on touch move
vScrollCSS                  
(string) 垂直滚动栏
hScrollCSS                  
(string) 水平滚动栏

方法

1
2
3
4
5
6
7
8
9
10
11
enable()                    
启用滚动栏
disable()                   
禁用滚动栏
scrollToBottom(time)        
滚动到内容的底部
scrollToTop(time)           
滚动到内容顶部
scrollTo(obj,time)          
to X / Y 坐标
scrollBy(obj,time)          
by X / Y 坐标
addPullToRefresh()          
启用下拉刷新的滚动栏
setRefreshContent(string)   
设置了下拉刷新内容的文字
addInfinite()               addInfinite事件
clearInfinite()             
Clear inifinite-scroll-end event
scrollToItem(DOMNode,time)  
滚动到屏幕上的特定元素

事件

Events must be registered on the scroller using $.bind()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
//scroller
object events
scrollstart                 
Scrolling started
scroll                      
Scrolling progress
scrollend                   
Scrolling stopped
 
//pull
to refresh
refresh-trigger             
Pull to refresh scroll started
refresh-release             
Event when pull to refresh is has happened
refresh-cancel              
User cancelled pull to refresh by scrolling
refresh-finish              
Pull to refresh has finished and hidden
 
//infinite
scroll
infinite-scroll             
User scrolled to the bottom of the content
infinite-scroll-end         
User finished scrolling

CSS/Customize

Below is an example used by App Framework's iOS7 theme to customize the look and feel of the popup

1
2
3
4
5
6
7
8
9
.scrollBar
{
    position:
absolute ;
    width:
5px !important;
    height:
20px !important;
    border-radius:
2px !important;
    border:
1px solid black !important;
    background:
red !important;
    opacity:
0 !important;
}

Examples

在HTML 中加入

1
||div
id=
"scroll"style='width:100%;height:200;'></div>

js中创建

1
2
3
4
5
varmyScroller=$("#scroll").scroller({
   verticalScroll:true,
   horizontalScroll:false,
   autoEnable:true
})

调用方法

1
myScroller.addPullToRefresh();

从缓存中获取滚动栏

1
varmyScroller=$("#scroll").scroller();//no
parameters

Pull to refresh

以下是怎样结合事件和运行下拉刷新的样例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
myScroller.addPullToRefresh();
 
//User
is dragging the page down exposing the pull to refresh message.
$.bind(myScroller,"refresh-trigger",function()
{
    console.log("Refresh
trigger"
);
});
 
//Here
we listen for the user to pull the page down and then let go to start the pull to refresh callbacks.
varhideClose;
$.bind(myScroller,"refresh-release",function()
{
    varthat
=
this;
    console.log("Refresh
release"
);
    clearTimeout(hideClose);
    //For
the demo, we set a timeout of 5 seconds to show how to hide it asynchronously
    hideClose
= setTimeout(
function()
{
        console.log("hiding
manually refresh"
);
        that.hideRefresh();
    },
5000);
    returnfalse;//tells
it to not auto-cancel the refresh
});
 
//This
event is triggered when the user has scrolled past and the pull to refresh block is no longer available
$.bind(myScroller,"refresh-cancel",function()
{
    clearTimeout(hideClose);
    console.log("cancelled");
});

infinite scrolling

The following shows how to implement infinite scrolling.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
myScroller.addInfinite();
 
//Bind
the infinite scroll event
$.bind(myScroller,"infinite-scroll",function()
{
    varself
=
this;
    console.log("infinite
triggered"
);
    //Append
text at the bottom
    $(this.el).append("
 
<div
id="
infinite"
style="
border:2px
solid black;margin-top:10px;width:100%;height:20px
">Fetching
content...</div>
 
");
    //Register
for the infinite-scroll-end - this is so we do not get it multiple times, or a false report while infinite-scroll is being triggered;
    $.bind(myScroller,"infinite-scroll-end",function()
{
        //unbind
the event since we are handling it
        $.unbind(myScroller,"infinite-scroll-end");
        self.scrollToBottom();
        //Example
to show how it could work asynchronously
        setTimeout(function()
{
            $(self.el).find("#infinite").remove();
            //We
must call clearInfinite() when we are done to reset internal variables;
            self.clearInfinite();
            $(self.el).append("
 
<div>This
was loaded via inifinite scroll<br>More Content</div>
 
");
            self.scrollToBottom();
        },
3000);
    });
});

有什么问题能够联系我

官网链接:http://app-framework-software.intel.com/api.php#scroller

欢迎增加学习交流群:333492644

app-framework学习--Scroller的更多相关文章

  1. jqMobi(App Framework)入门学习(一)

    jqMobi(App Framework)入门学习(一) 1. 什么是jqMobi? jqMobi是由appMobi针对HTML5浏览器和移动设备开发的javascript框架.是个极其高速的查询选择 ...

  2. [AFUI]App Framework

    ---------------------------------------------------------------------------------------------------- ...

  3. Entity Framework学习笔记

    原文地址:http://www.cnblogs.com/frankofgdc/p/3600090.html Entity Framework学习笔记——错误汇总   之前的小项目做完了,到了总结经验和 ...

  4. Android学习Scroller(五)——具体解释Scroller调用过程以及View的重绘

    PS: 该篇博客已经deprecated,不再维护.详情请參见  站在源代码的肩膀上全解Scroller工作机制  http://blog.csdn.net/lfdfhl/article/detail ...

  5. Entity Framework 学习

    Entity Framework 学习初级篇1--EF基本概况 Entity Framework 学习初级篇2--ObjectContext.ObjectQuery.ObjectStateEntry. ...

  6. [Learn AF3]第一章 如何使用App Framework 3.0 构造应用程序

    af3的变化非常大.参见[译]Intel App Framework 3.0的变化 一.应用需要引用的js脚本: af3中不在自己实现dom选择器,而是选择基于jquey或兼容jquery的库如zep ...

  7. [译]Intel App Framework 3.0的变化

    App Framework 3.0 原文 IAN M. (Intel) 发布于 2015-02-11  05:24 我们高兴地宣布App Framework 的新版本3.0发布了.你可以获得最新的代码 ...

  8. Android FrameWork学习(二)Android系统源码调试

    通过上一篇 Android FrameWork学习(一)Android 7.0系统源码下载\编译 我们了解了如何进行系统源码的下载和编译工作. 为了更进一步地学习跟研究 Android 系统源码,今天 ...

  9. App Framework $.ui.loadContent 参数解释

    在使用 app Framework 的 $.ui.loadContent(target,newTab,goBack,transition);时 对 newTab goback两个参数一直不得其解.通过 ...

随机推荐

  1. C语言 · 求存款

    算法提高 3-2求存款   时间限制:1.0s   内存限制:256.0MB      问题描述 见计算机程序设计基础(乔林)P50第5题. 接受两个数,一个是用户一年期定期存款金额,一个是按照百分比 ...

  2. Tensorflow 梯度下降实例

    # coding: utf-8 # #### 假设我们要最小化函数 $y=x^2$, 选择初始点 $x_0=5$ # #### 1. 学习率为1的时候,x在5和-5之间震荡. # In[1]: imp ...

  3. 【BZOJ】1648: [Usaco2006 Dec]Cow Picnic 奶牛野餐(dfs)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1648 水题.. dfs记录能到达的就行了.. #include <cstdio> #in ...

  4. sudo执行脚本找不到环境变量解决方法

    问题: 当普通用户下,设置并export一个变量,然后利用sudo执行echo命令,能得到变量的值,但是如果把echo命令写入脚本, 然后再sudo执行脚本,就找不到变量,未能获取到值. 原因 sud ...

  5. zoj 1081:Points Within(计算几何,判断点是否在多边形内,经典题)

    Points Within Time Limit: 2 Seconds      Memory Limit: 65536 KB Statement of the Problem Several dra ...

  6. HTTP报文-->MVC

    引用 学习Web开发不好好学习HTTP报文,将会“打拳不练功,到老一场空”,你花在犯迷糊上的时间比你沉下心来学习HTTP的时间肯定会多很多. HTTP请求报文解剖 HTTP请求报文由3部分组成(请求行 ...

  7. hdu 4708(暴力+找规律)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4708 思路:由于N不大,并且我们可以发现通过旋转得到的4个对角线的点的位置关系,以及所要旋转的最小步数 ...

  8. Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication 解决办法

    相信很多人都遇到过这个问题,用Android Studio正在运行程序的时候,突然不知道什么原因,报一个找不到application或者找不到activity的错误(java.lang.ClassNo ...

  9. Android模拟器基本使用和常用工具介绍

    注:其中部分内容参考网上资源 1.Android模拟器介绍 Android中提供了一个模拟器来模拟ARM核的移动设备.Android的模拟器是基于QEMU开发的,QEMU是一个有名的开源虚拟机项目(详 ...

  10. IOS 预览word文档的集中方式

    在iPhone中可以很方便的预览文档文件,如:pdf.word等等,这篇文章将以PDF为例.介绍三种预览PDF的方式,又分别从本地pdf文档和网络上的pdf文档进行对比. 预览本地PDF文档: 1.使 ...