# 事件
Jquery Mobile提供了一些建于本地事件的自定義事件以用來創建一些有用的鉤子. 要注意這些事件是建立于各種已存在的觸摸事件之上,比如 鼠標和窗口事件,所以你可以通過使用?live()?或者?bind()將他們綁定到其他的Jquery事件
## 觸摸事件 Touch events
**tap(輕擊):一次快速完整的輕擊后觸**
**taphold(輕擊不放):輕擊并不放(大約一秒)后觸**
**swipe(劃動):一秒內水平拖拽大于30PX,同時縱向拖曳小?0px的事件發生時觸發**
**swipeleft(左劃):劃動事件為向左的方向時觸發**
**swiperight(右劃):劃動事件為向右的方向時觸發**
## 設備方向變化事件 Orientation change event
**orientationchange**
當設備的方向變化(設備橫向持或縱向持)此事件被觸發。綁定此事件時,你的回調函數可以加入第二個參數,作用為描述設備橫或縱向的屬性,"portrait"?quot;landscape"。這些值也會作為class值加入到html的元素中,使你可以通過css中的選擇器改變他們的樣式。注意當瀏覽器不支持orientationChange事件的時候可以通過resize 事件綁定
## 滾屏事件 Scroll events
**scrollstart**
當屏幕滾動開始的時候觸發。蘋果的設備會在滾屏時凍結DOM的操作,當滾屏結束時按隊列執行這些dom操作,我們現在正在研究方法讓蘋果的設備在滾屏開始前執行dom操作
**scrollstop**
滾屏結束時觸發
## 滾屏事件 Scroll events
**scrollstart**
當屏幕滾動開始的時候觸發。蘋果的設備會在滾屏時凍結DOM的操作,當滾屏結束時按隊列執行這些dom操作,我們現在正在研究方法讓蘋果的設備在滾屏開始前執行dom操作
**scrollstop**
滾屏結束時觸發
## 頁面顯示/隱藏事件 Page show/hide events
在Jquery Mobile中,無論頁面顯示或是隱藏,都在該頁面觸發兩個事件。哪個事件被觸發取決于頁面被顯示還是隱藏,所以當頁面轉場發生時,實際?個事件被觸發了,每個頁面有兩個:
pagebeforeshow:轉場之前,頁面被顯示時觸發
pagebeforehide:轉場之前,頁面被隱藏時觸發
pageshow:轉場之后,頁面被顯示時觸發
pagehide:轉場之后,頁面被隱藏時觸發
請注意這4個事件都引用了”上一頁“,或”下一頁“,這取決于哪一頁被顯示或者隱藏,以及”上一頁“或者”下一頁“是否存在。(第一個被顯示的page并沒?quot;上一?quot;可以引用,但是同樣會引用一個空的Jquery對象 ),你可以通過將第二個參數作為一個綁定的回調函數訪問這一引用
```
$('div').live('pageshow',function(event, ui){
alert('This page was just hidden: '+ ui.prevPage);
});
$('div').live('pagehide',function(event, ui){
alert('This page was just shown: '+ ui.nextPage);
});
```
而且,務必在 Jquery Mobile 執行前綁定這些函數,以使 他們在初始化頁面加載時被調用。在 mobileinit 事件的處理函數中使用它們既可,詳情參?a href="globalconfig.html">global config
## 頁面初始化事件 Page initialization events
Jquery Mobile會自動基于page"內的增強的約定自動初始化一些插件?例如:給一個input輸入框約定了type=range屬性會自動生成一個自定義滑動條
這些自動初始化的行為是受"page"插件控制的,它在執行前后部署部署事件,允許你在初始化前后操作頁面,或者甚至自己提供初始化行為,禁止自動初始化。注以下的頁面初始化事件在每個“page”只被觸發一次,而顯?隱藏 事件則不同,在頁面顯示或者隱藏的每次,它們都會被觸發
pagebeforecreate:頁面初始化時,初始化之前觸
pagecreate:頁面初始化時,初始化之后觸
```
$('#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!');
});
```
注意:通過綁定pagebeforecreate然后return false,你禁止頁面插件自己的操作
而且,務必在 Jquery Mobile 執行前綁定這些函數,以使 他們在初始化頁面加載時被調用。在 mobileinit 事件的處理函數中使用它們既可,詳情參?a href="globalconfig.html">global config
## 動畫事件 Animation Events
Jquery Mobile提供了animationComplete 插件,你可以用來添加或刪除一個class來應用CSS轉場效果
- 綜述
- Jquery mobile介紹 Jquery Mobile Overview
- 關鍵特性: Key features:
- 可訪問性 Accessibility
- a4版本支持的平臺 Supported platforms in Alpha 4
- API
- 默認配置
- 事件
- 方法
- 有響應的布局助手
- 主題
- 組件
- 頁面與對話框
- 頁面
- 頁面轉場 Page transitions
- 創建對話框 Creating dialogs
- Jquery Mobile的導航模型 Jquery Mobile's navigation model
- 鏈接的格式 Link formats
- 給頁面主題樣式 Page Theming
- 工具欄
- 工具欄
- 頭部欄
- 尾部欄
- 導航欄
- 固定定位的工具欄會在滾屏后重新出現 Fixed toolbars will re-appear after you scroll
- 全屏的固定的工具欄 Fullscreen fixed toolbar
- 持續的尾部欄 Persistent footer nav bar
- 給頭部欄和尾部欄設置主題樣式
- 按鈕
- 按鈕標記選項 Button markup options
- 給按鈕添加圖標 Adding Icons to Buttons
- 內聯按鈕 Inline buttons
- 組按鈕 Grouped buttons
- 主題化按鈕 Theming buttons
- 內容的格式化
- html格式化 HTML Formatting
- 布局網格 Layout grids
- 可折疊的內容 Collapsible content markup
- 給內容主題 Theming content
- 表單元素
- 表單元素 Form elements
- 表單元素示例 Form element gallery
- 文本輸入框 Text inputs
- 搜索輸入框 Search inputs
- 滑動條 Slider
- 開關 Flip toggle switches
- 復選按鈕 Checkboxes
- 單選按鈕組 Radio buttons
- 選擇菜單 Select menus
- 表單的主題樣式 Form themes
- ajax的表單提交 Ajax form submission
- 表單插件的方法 Form Plugin Methods
- Jquery UI 的移動版日期拾取器插件 Jquery UI's Datepicker Styled for mobile
- 列表
- 列表 List views
- 列表標記的規約List markup conventions