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. 使用padding和float处理带有间隙的多块布局

    . 每个间隙都是20px <div class="action-content pd10" style=""> <div class=&quo ...

  2. Eclipse上配置btm

    1.新建一个空的工程btm-szny,jdk版本1.6 2.在工程中导入CVS中的代码如下图

  3. Hibernate Annotation 字段 默认值

    http://emavaj.blog.163.com/blog/static/133280557201032262741999/ ——————————————————————————————————— ...

  4. VS Code直接调试Angular代码

    安装VS Code扩展 安装Debugger for Chrome 安装Debugger for Firefox 配置Launch.json文件 Launch.json文件的创建和生成我们可以利用VS ...

  5. java------守护线程与非守护线程

    最近重新研究Java基础知识,发现以前太多知识知识略略带过了,比较说Java的线程机制,在Java中有两类线程:User Thread(用户线程).Daemon Thread(守护线程) ,(PS:以 ...

  6. php -- memcached 内存缓存

    一.memcached 简介 在很多场合,我们都会听到 memcached 这个名字,但很多同学只是听过,并没有用过或实际了解过,只知道它是一个很不错的东东.这里简单介绍一下,memcached 是高 ...

  7. iOS越狱系统使用root权限运行命令

    //命令原型:sh -c "echo 密码 | su -c 'ls --help' " //转载请注明:http://www.cnblogs.com/bandy/p/7069503 ...

  8. MyEclipse10.6 安装SVN插件方法及插件下载地址

        今天MyEclipse10.6出了点问题,所以重装了它,同一时候也把svn的插件重装了一次,把网上资源和自己的经历顺便在博客这里记录一下.建议直接看方法一好了,简单方便,不必要折腾太多. 下来 ...

  9. jquery如何书写一个根据下拉选择列表的选择值 控制其他标签时候显示的功能

    有时候我们在一些表单搜集信息的时候,需要根据上一项的选择情况设定下面的某些输入信息是否显示,是否需要被收集等,这个时候就要对下拉列表的选择事件做一个监听. 代码如下: <!DOCTYPE HTM ...

  10. PagerAdapter 普通写法

    1,viewPagre的普通写法 public ImagePagerAdapter(Context context, List<Photo> imgList) { this.mContex ...