jquerymobile 的特有 事件 和 方法 (转)
1.触摸屏事件—— Touch events
tap
Triggers after a quick, complete touch event.
本人实际测试效果:轻轻点击,效果和按普通按钮差不多。
taphold
Triggers after a held complete touch event (close to one second).
本人实际测试效果:按住一会儿,大约1秒,即触发。很顶用。
swipe
Triggers when a horizontal drag of 30px or more (and less than 20px vertically) occurs within 1 second duration.
本人实际测试效果:不懂,不会用
swipeleft
Triggers when a swipe event occurred moving in the left direction.
本人实际测试效果:在触摸屏幕上向左滑动,很好用。
PS:在电脑上你也可以用,按住鼠标向左拖就可以了。
swiperight
Triggers when a swipe event occurred moving in the right direction.
本人实际测试效果:在触摸屏幕上向右滑动,很好用。
PS:在电脑上你也可以用,按住鼠标向右拖就可以了。
使用方法:用live或者bind绑定到dom元素上即可,我是这么用的(以下的类似):
$('#wlist').live('swipeleft',function(){
changepage('up');
});
2.重力感应事件—— Orientation change event
orientationchange
Triggers when a device orientation changes (by turning it vertically or horizontally). When bound to this event, your callback function can leverage a second argument, which contains an orientationproperty equal to either "portrait" or "landscape". These values are also added as classes to the HTML element, allowing you to leverage them in your CSS selectors. Note that we currently bind to the resize event when orientationChange is not natively supported.
对应于手机上重力感应功能,当显示效果从垂直变为水平,或由水平变为垂直时触发。本人没用上该效果。
3.滚动条事件——Scroll events
scrollstart
Triggers when a scroll begins. Note that iOS devices freeze DOM manipulation during scroll, queuing them to apply when the scroll finishes. We're currently investigating ways to allow DOM manipulations to apply before a scroll starts.
个人测试效果:当滚动条触发时使用。
scrollstop
Triggers when a scroll finishes.
个人测试效果:当滚动条停止时使用,利用这个你可以让其返回当前滚动条的位置信息并记录下来。
$('body').live('scrollstop',function(){
$(‘#hidescroll’).val( $(this).scrollTop );
});
上面用一个ID名为hidescroll的影藏hidden控件保存了当前滚动条的位置信息。如果想使用后退页面时返回当前滚动条的位置,就请把这个hidescroll的值一并传输过去吧,不论是用get还是post。并且记得在页面写上:
$(document).ready(function(){ // document.body.scrollTop = $(‘#hidescroll’).val();});
4 页面显示影藏事件——Page show/hide events
pagebeforeshow
Triggered on the page being shown, before its transition begins.
pagebeforehide
Triggered on the page being hidden, before its transition begins.
pageshow
Triggered on the page being shown, after its transition completes.
pagehide
Triggered on the page being hidden, after its transition completes.
这四个事件的好处是,在页面的加载过程中你可以干些事。
比如,在加载的时候添加loading画面:
$('div').live('pagebeforeshow',function(){$.mobile.pageLoading();});
在加载完成后影藏loading画面:
$('div').live('pageshow',function(){$.mobile.pageLoading(true);});
5. 页面创建事件:Page initialization events
pagebeforecreate
Triggered on the page being initialized, before initialization occurs.
pagecreate
Triggered on the page being initialized, after initialization occurs.
有时候你会遇到这种情况:一个页面,已经填写了一些自定义信息,你需要依靠这些信息初始化
一个新页面。我遇到的例子是,我的文件列表一刷新,点击其中任意一个文件可以显示一个对话框,这个对话框要显示你点击的这个文件的名字,和其他操作。新页
面并不知道你点的是哪个文件,总不能再查询一遍吧?这个时候你就需要Page initialization
events事件了,把你点击的文件名传过去。
$('#aboutPage').live('pagebeforecreate',function(event){
alert('This page was just inserted into the dom!'); });
$('#aboutPage').live('pagecreate',function(event){ alert('This page was
just enhanced by jQuery Mobile!'); });
上面是jquerymobile官网给出的两个例子,,允许你操纵一个页面pre-or-post初始化,相对于页面显示/隐藏事件,创建事件只会在初始化网页的时起作用。
值得注意的是,在Jquerymobile 1.0a2版本,加载对话框等东西进来,实际是用ajax方法将对话框以div role="page"模式加入当前页面。这个新加入的div,用ID保存它被ajax进来时的路径。
例如,我的主页mian.php有一个a标签:
<a href="dialog/search.php" type="GBK"
data-rel="dialog" data-transition="slide" data-icon="search"
data-iconpos="top" >简单搜索</a>
点击这个标签的结果是,在mian.php中,被ajax加入了一个id="dialog/search.php"的div,这个div, role="page",其内容就是文件search.php中body里的内容。
这样做,导致当下次再点击同一个连接的时候,实际相当于显示已被加载进来的page,加载
速度当然很快。但是,这意味着你的ID属性已经不再是原来页面的一部分,而是当前页面的一个div,所以你必须记住当绑定到页面,pagecreate事
件(pagebeforecreate等等)。避免这个问题的方法是用class代替id。好在我在我的程序里几乎没有遇到这个问题,因为我根本没有用
Page initialization
events事件,在初始化一些对话框的时候,我在主页的JS中做操作,修改对话框中的元素(因为我知道这些对话框显示的时候就已经是主页的一个div
了,我要的ID总会找到)。不过这样做的结果是,Jquerymobile
1.0a3版本导致了我所有对话框的失效……算了,哥不更新了, 等beta版出来还不行么。
6。常用函数、方法
显示或影藏jquery自带的loading画面
//cue the page loader
$.mobile.pageLoading();
//hide the page loader
$.mobile.pageLoading( true );
跳转到另一个页面上
//transition to the "about us" page with a slideup transition
$.mobile.changePage("about/us.html", "slideup");
//transition to the "search results" page, using data from a form with an ID of "search""
$.mobile.changePage({ url: "searchresults.php", type: "get", data: $("form#search").serialize() });
//transition to the "confirm" page with a "pop" transition without tracking it in history $.mobile.changePage("../alerts/confirm.html", "pop", false, false);
设置滚顿条位置
//scroll to Y 100px
$.mobile.silentScroll(100);
设置根据显示时宽度的最大最小信息设置html断点,我没用过,我猜会让断点以后的html不显示。$.mobile.addResolutionBreakpoints (method)Add width breakpoints to the min/max width classes that are added to the HTML element.
//add a 400px breakpoint
$.mobile.addResolutionBreakpoints(400);
//add 2 more breakpoints
$.mobile.addResolutionBreakpoints([600,800]);
除此以外还有其他一些方法,我都没用过,也没需要去用。等beta1的文档出来了再看吧。
jqmData(), jqmRemoveData(), and jqmHasData() (method)
$.mobile.path (methods, properties)Utilities for getting, setting, and manipulating url paths. TODO: document as public API is finalized.
$.mobile.base (methods, properties)Utilities for working with generated base element. TODO: document as public API is finalized.
$.mobile.activePage (property)
jquerymobile 的特有 事件 和 方法 (转)的更多相关文章
- jQuery中的事件绑定方法
在jQuery中,事件绑定方法大致有四种:bind(),live(), delegate(),和on(). 那么在工作中应该如何选择呢?首先要了解四种方法的区别和各自的特点. 在了解这些之前,首先要知 ...
- jQuery的4种事件绑定方法
jQuery中提供了四种绑定事件的方法,分别是bind.live.delegate.on,对应的解除监听的函数分别是unbind.die.undelegate.off: 一.on()方法(首选方法) ...
- 查看html元素绑定的事件与方法的利器
WEB标准提倡结构.表现和行为相 分离,现在越来越多采用这种表现和行为的方式,但它也为我们开发调试带来一些问题,网页载入一堆JavaScript,,我们很难搞清楚最后在哪些元素的哪个动作绑定了事件,尤 ...
- Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数、ColModel API、事件及方法
系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...
- 【转】监听按钮除OnClick外其他事件的方法,附简易改编的UIButton类
http://lib.csdn.net/article/unity3d/38463 作者:IceFantasyLcj 大家好,我是雨中祈雨.一直以来,CSDN都是我最好的编程助手.这是我在CSDN的第 ...
- 【转】 NGUI 监听按钮除OnClick外其他事件的方法,附简易改编的UIButton类
http://blog.csdn.net/icefantasylcj/article/details/49450555 大家好,我是雨中祈雨.一直以来,CSDN都是我最好的编程助手.这是我在CSDN的 ...
- 原生JS事件绑定方法以及jQuery绑定事件方法bind、live、on、delegate的区别
一.原生JS事件绑定方法: 1.通过HTML属性进行事件处理函数的绑定如: <a href="#" onclick="f()"> 2.通过JavaS ...
- combobox 属性、事件、方法
一 .combobox 属性.事件.方法公共属性 名称 说明 AccessibilityObject 获取分配给该控件的 AccessibleObject. AccessibleDefaultActi ...
- jquery 绑定事件的方法
jQuery中提供了四种绑定事件的方法,分别是bind.live.delegate.on,对应的解除监听的函数分别是unbind.die.undelegate.off: 一.on()方法(首选方法) ...
随机推荐
- BS系统经验总结
本文章是对刚做完BS系统的总结.主要记录开发过程中遇到的问题,及问题是如何解决的. 1,界面显示 一个系统界面首先要和谐,比如不同页面文本框长度高度要统一,按钮样式要一致,表格显示一样居中都居中靠左都 ...
- C#: 实现支持断点续传多线程下载
/* .Net/C#: 实现支持断点续传多线程下载的 Http Web 客户端工具类 (C# DIY HttpWebClient)* Reflector 了一下 System.Net.WebClien ...
- nodejs pm2的简单应用
一.简介 pm2是一个带有负载均衡功能的应用进程管理器,类似有Supervisor,forever,详细参数见官网:http://pm2.keymetrics.io 二.安装 Linux Binari ...
- Cognos业务洞察力:My First Business Insight
Cognos Dashboard Cognos Dashboard 可以展示具有重要影响力的信息,以监视.衡量和管理企业绩效. IBM Cognos Dashboard(仪表盘)使任何用户能够以支持其 ...
- 相似qq的IM聊天应用源代码
这个是IM聊天应用源代码,该应用IM支持实现XMPP,以及图片和表情,语音.消息回执等功能,基本覆盖了常见的im应用的功能了,大家能够參考一下吧. 源代码下载:http://code.662p.com ...
- ArcGIS放射状流向地图
今年百度推出了一个百度迁徙,在其他人看是好像是还挺专业的,其实不复杂.下面是百度的迁徙图示例:从图中可以看出从一个城市到另一个城市迁徙的直线路径,多个路径可以反映城市是否为热点城市,即人口流动比较大. ...
- 栈的应用实例——中缀表达式转换为后缀表达式
声明:本程序读入一个中缀表达式,将该中缀表达式转换为后缀表达式并输出后缀表达式. 注意:支持+.-.*./.(),并且输入时每输入完一个数字或符号都要加一个空格,特别注意的是在整个表达式输入完成时也要 ...
- Linux 下升级python和安装pip
Linux版本升级: 1. 首先确认Linux操作系统中自带的python 版本时候与自己所需要的版本一致 所有的python版本都在https://www.python.org/ftp/pytho ...
- Android Studio怎样加入工程(project)为library(针对非gradle)
这篇文章还是针对非gradle build的project,gradle build有一些区别.在Eclipse要引用别的project为本project的library非常easy,可是在Andro ...
- pushlet单播与多播
近期要弄一个消息推送的功能,在网上找了非常多的关于pushlet的文章,尽管写的都非常具体,可是本人看了以后却总认为是模棱两可···不知道怎样下手,终于參考了这些文章中的一些内容,并结合官网的源码.做 ...