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. .NET Standard - 揭秘 .NET Core 和 .NET Standard[转自MSDN]

    作为 .NET 系列的最新成员,.NET Core 和 .NET Standard 的概念及其与 .NET Framework 的区别并不十分明确.在本文中,我将准确介绍每个产品及其适用场景. 在详细 ...

  2. BI开发之——Mdx基础语法(转至指尖流淌)

    Mdx为MultiDimensional  Expressions的缩写,多维表达式,是标准的OLAP查询语言.在多数OLAPServer都提供Mdx支持,如Microsoft Sql Server ...

  3. 重新=》easyui DataGrid是否可以动态的改变列显示的顺序

    $.extend($.fn.datagrid.methods,{ columnMoving: function(jq){ return jq.each(function(){ var target = ...

  4. C++ c++与C语言的区别(空结构体)

    //区别⑨:空结构体声明(C++版本) #include<iostream> using namespace std; struct A{}; class B{}; void main() ...

  5. C语言 百炼成钢23

    /* 题目59:链表如下 typedef struct _LinkList { int data; struct _LinkList*next; } LinkList; 有如下结点数据域 1 2 3 ...

  6. android system.img 解压和打包

    system.img重新编译的时间太长,添加和更改的文件系统内容,往往通过对system.img加压再打包的方式. 参考链接 http://blog.csdn.net/whu_zhangmin/art ...

  7. java---Socket编程出现的异常种类

    .java.net.SocketTimeoutException.这个异常比较常见,socket超时.一般有2个地方会抛出这个,一个是connect的时候,这个超时参数由connect(SocketA ...

  8. 用公式编辑器编辑n元乘积的方法

    在数学中经常会出现很多个元素进行求和或者是乘积的情况,但是在整个数学过程中,不可能将所有的元素都写出来,这样很费时费力同时过程也很赘余,不能很好地理解其中的过程,因此数学中对于这一类的多元相加或者相乘 ...

  9. Python爬虫(七)

    源码: import requests import re from my_mysql import MysqlConnect # 获取详情页链接和电影名称 def get_urls(page): u ...

  10. 三、Gradle初级教程——Gradle除了签名打包还能配置jar包

    1.gradle概念 构建工具,Groovy,Java. 2.gradle配置jar包,和libs文件夹导入jar包的区别 到此,还是这种方法导入JAR包比较方便.每次更新JAR包,只需要修改版本号就 ...