Jquery Mobile事件
on()方法用于添加事件处理程序
1.Touch类事件
在用户触摸屏幕时触发
1.1 tap事件 用户敲击某个元素时发生
$("p").on("tap",function(){
$(this).hide();
})
1.2 taphold事件 用户敲击某个元素并保持一秒被触发
$("p").on("taphold",function(){
$(this).hide();
})
1.3 swipeleft 用户在某个元素上左滑动超过30px时触发
$("p").on("swipeleft",function(){
alert("You swiped left!");
});
2.滚动事件
2.1 scrollstart 事件在用户开始滚动页面时被触发
$(document).on("scrollstart",function(){
alert("开始滚动!");
});
2.2 scrollstop 事件在用户停止滚动页面时被触发
$(document).on("scrollstop",function(){ alert("停止滚动!"); });
3.方向事件
orientationchange 事件 用户水平或垂直旋转屏幕时触发
使用orientationchange 事件,需要把它添加到window对象
$(window).on("orientationchange",function(){ alert("方向已改变!"); });
由于该事件与window对象绑定,就有window.orientation属性
if(window.orientation==0){ 说明屏幕是portrait的 }
提示:window.orientation 属性对 portrait 视图返回 0,对 landscape 视图返回 90 或 -90
4.页面事件
在 jQuery Mobile 中与页面打交道的事件被分为四类:
- Page Initialization - 在页面创建前,当页面创建时,以及在页面初始化之后
- Page Load/Unload - 当外部页面加载时、卸载时或遭遇失败时
- Page Transition - 在页面过渡之前和之后
- Page Change - 当页面被更改,或遭遇失败时
4.1 Initialization事件
事件 | 描述 |
---|---|
pagebeforecreate | 当页面即将初始化,并且在 jQuery Mobile 已开始增强页面之前,触发该事件。 |
pagecreate | 当页面已创建,但增强完成之前,触发该事件。 |
pageinit | 当页面已初始化,并且在 jQuery Mobile 已完成页面增强之后,触发该事件。 |
$(document).on("pagebeforecreate",function(event){ alert("触发 pagebeforecreate 事件!"); }); $(document).on("pagecreate",function(event){ alert("触发 pagecreate 事件!"); }); $(document).on("pageinit",function(event){ alert("触发 pageinit 事件!") });
4.2 Load事件 外部页面加载
事件 | 描述 |
---|---|
pagebeforeload | 在任何页面加载请求作出之前触发。 |
pageload | 在页面已成功加载并插入 DOM 后触发。 |
pageloadfailed | 如果页面加载请求失败,则触发该事件。默认地,将显示 "Error Loading Page" 消息。 |
$(document).on("pageload",function(event,data){ alert("触发 pageload 事件!\nURL: " + data.url); }); $(document).on("pageloadfailed",function(event,data){ alert("抱歉,被请求页面不存在。"); });
4.3 过渡事件 从一页过渡到下一页时触发
事件 | 描述 |
---|---|
pagebeforeshow | 在“去的”页面触发,在过渡动画开始前。 |
pageshow | 在“去的”页面触发,在过渡动画完成后。 |
pagebeforehide | 在“来的”页面触发,在过渡动画开始前。 |
pagehide | 在“来的”页面触发,在过渡动画完成后。 |
$(document).on("pagebeforeshow","#pagetwo",function(){ // 当进入页面二时 alert("页面二即将显示"); }); $(document).on("pageshow","#pagetwo",function(){ // 当进入页面二时 alert("现在显示页面二"); }); $(document).on("pagebeforehide","#pagetwo",function(){ // 当离开页面二时 alert("页面二即将隐藏"); }); $(document).on("pagehide","#pagetwo",function(){ // 当离开页面二时 alert("现在隐藏页面二"); });
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现