首頁 >web前端 >js教程 >jQuery移動移動web(6)_jquery

jQuery移動移動web(6)_jquery

WBOY
WBOY原創
2016-05-16 15:24:241235瀏覽

モバイル デバイス用の jquery モバイル イベント タイプ。

1.タッチイベント。

タップは、完全なクリック操作と同様に、画面をすばやくタッチして終了します。
タップホールド 画面をタッチして一定時間押し続けます。
1 秒以内に画面のピクセルが水平方向に 30px 移動すると、スワイプがトリガーされます。
swipeleft 左にスライド
右にスライドするようなスワイプライト。

2.方向転換イベント

モバイル デバイスの向きが変わると、orientationchange イベント関数がトリガーされます。イベントのコールバック関数の 2 番目のパラメーターは、現在の向きを識別するために使用されるパラメーターを返します。 このパラメータには、ポートレート (垂直) とランドスカルプ (水平) の 2 つの戻り値があります。

3. スクロールイベント、

scrollstart このイベントは、スクロールが開始されるときにトリガーされます。

このイベントは、スクロールが終了するとトリガーされます。

4. 表示/非表示

Pagebeforeshow イベントは、アニメーション効果を通じてビューが画面に表示され始める前にトリガーされます。

Pagebeforehide は、アニメーション効果によってビューが非表示になり始める前にイベントをトリガーします。
Pageshow イベントは、アニメーション効果を通じてビューが画面に表示されるときにトリガーされます。
Pagehide は、アニメーション効果によってビューが非表示になったときにトリガーされます。

サンプルコード:


  $("div").live("pageshow",function(event,ui){ 
        alert("this page just hidden"+ui.prevPage)
      })

5. マウスイベントをシミュレートします

vmouseover はタッチ イベントとマウスオーバー イベントを均一に処理します。

vmousedown は、タッチ イベントとマウス プレス イベントを均一に処理します。
vmousemove は、タッチ イベントとマウス移動イベントを均一に処理します。
vmouseup は、タッチ イベントとマウス ボタンのリリース イベントを均一に処理します。
vclick は、タッチ イベントとマウス クリック イベントを均一に処理します。
vmousecancel は、タッチ イベントとマウス離脱イベントを均一に処理します。

ページビュー補助

1.$.mobile.changePage

関数型プログラミングを通じて 2 つのビュー間の切り替え効果を変更します。通常、切り替え効果は、ハイパーリンクをクリックするとき、またはフォームを送信するときにカスタマイズされます。

文法:

 $.mobile.changePage(to,options);
      to 是必选参数, 可以传递的参数类型包括字符串,对象。
       options 可选,传递的是一个JSON 数据格式对象,
       用法: 以下实例将改变decondPage.html 的页面效果
       $.mobile.changePage("secondPage.html",{ 
        transition:"slidedown"
      }) 

フォーム送信操作

 $.mobile.changePage("submit.php",{ 
      type:"post";
      data:$("form#add").seriaize();
    })

2.$.mobile.loaPage

主な機能は、外部ページをロードし、現在のページの DOM 要素に挿入することです。

$.mobile.loadPage(url,options);
URL は必須パラメータであり、絶対または相対 URL アドレスを渡します
オプションはオプションのパラメーターであり、JSON データ オブジェクトを渡します。

例:

$.mobile.loadPage("secomdPage.html");
     提交表单并加载结果页面:
     $.mobile.loadPage("result.php",{ 
      type:"get",
      data:$("form#search").serizlize();
    })

資料儲存:

   1.jqmData()方法;

    可以在元素上綁定任意資料。

     $.mobile.jqmData(element,key,value)
      element 參數是指定需要綁定資料的元素;
       key 需要綁定資料的屬性名,
       value 綁定的資料。

   2.jqmRemoveData() 方法:

     此方法是移除綁定在元素上的data數據,
     $.mobile.jqmRemoveData([name])
      name 是選用參數,指定需要移除哪個data屬性,如果不穿參數,則需要移除元素上的所有資料。

   3.jqmHasData() 方法

       判斷元素上是否存在綁定 的數據,
       $.mobile.jqmHasData(element);
      element 參數是一個進行資料檢查的DOM元素。

位址路徑輔助工具:

   1.解析URL 位址

     $.mobile.path.parseUrl 函數解析一個Url 指定, 並傳回一個含有所有參數值的對象,讓我們很輕易的存取Url位址上的參數屬性。

     parseUrl 函數的語法

     $.mobile.path.parseUrl(url);
      url 參數是一個相對或絕對的URL位址,必選傳入的參數。
       parseUrl 函數傳回一個對象,物件內包含豐富的屬性。
       屬性: hash 說明:#號後面的所有的字元內容,相當於location 的hash
      屬性: host 說明:URL的主機名稱和連接埠號碼
       屬性: hostname 說明:傳回只包含URL 的主機名稱。
       屬性: href 說明:傳回整個URL位址。
       屬性: pathname 說明:傳回檔案或目錄的關聯路徑
       屬性: port 說明:請求回傳Url的連接埠號碼
       屬性:portocol 說明:傳回請求Url 位址的協議,如 http https
      屬性:search 說明:傳回位址中「?」後面的請求參數
       屬性:authority 說明:傳回使用者名,密碼,主機名,連接埠號碼組成的位址,
       屬性:directiry 說明:傳回請求網址的目錄路徑,
       屬性:domain 說明:傳回 protocal 協定和authority 組成的路徑
       屬性:filename 說明:傳回請求的Url檔名
       屬性:hrefOfHash 說明:傳回不包含hash 值的URL 路徑。
       屬性:hrefOfSearch 說明:傳回不包含請求參數和hash值的URL 路徑。
       屬性:password 說明:傳回請求URL 中的密碼 如ftp 協定密碼。
       屬性: username 說明:傳回請求URL中的使用者名,如ftp 協定的使用者名稱。

loading 顯示/隱藏

     顯示loading 對話框的方法是
       $.mobile.showPageLoadingMse();
     隱藏loading 對話框的方法是
       $.mobile.hidePageLoadingMse();

 JQuery Mobile 與 HTML5 的 3個優點

 1. 上手迅速並支援快速迭代:在一個星期多一點的時間裡,透過閱讀JQuery Mobile文件以及O'Reilly出版的JQuery Mobile書籍,我完成了一個可以工作的app初步版本。在此之前我沒有HTML5 / JQuery Mobile開發經驗。與Android和iOS相比,使用JQuery Mobile和HTML5建立你的UI和邏輯會比在原生系統下建置快得多。

譯註:原生系統:原廠的作業系統,例如Android原生系統是Google發布未經修改的系統。在本文中,原生應用程式指直接用系統提供的API開發的程序,與JQuery Mobile開發的程序相對應。

我發現Apple的Builder介面的學習曲線十分陡峭,同樣學習令人費解的Android版面系統也很耗時間。此外,要使用原生程式碼將一個list view連接到遠端的資料來源並且具有漂亮的外觀是十分複雜的(在Android上是ListView, 在iOS上是UITableView)我能夠透過已經掌握的JavaScript和HTML/CSS知識快速實現相同的功能,無需學習新的adapter,delegate等等抽象概念,只要編寫JQuery程式碼就可以做到。

2.避免麻煩的應用程式商店審核過程以及調試、構建帶來的痛苦:為手機開發應用,尤其是iOS系統的手機,最痛苦的過程莫過於通過Apple應用商店的審批。想要讓一個原生應用程式發布給iOS用戶,你需要等待一個相當長的過程(需要好幾天,甚至可能是好幾週)。不僅在第一次發布程式時要經歷磨難,以後的每一次升級也是如此。這使得QA和發布流程變得複雜,還會增加額外的時間。由於JQuery Mobile應用程式只是一種web應用程序,因此它繼承了所有web環境的優點:當用戶加載你的網站時,他們就馬上「升級」到最新的版本。可以馬上修復bug和添加新的功能。即使是在Android系統——應用程式市場的要求比起Apple環境寬鬆得多,在用戶不知不覺中完成產品升級也是一件很好的事情。

進一步的好處是,發布beta或測試版本會更加容易。只要告訴用戶用瀏覽器打開你的網址就可以了!不需要考慮iOS令人抓狂的DRM,也不需要理會Android必須的APK。

3.支援跨平台和跨裝置開發:一個巨大的好處是,我的應用程式馬上可以在Android和IOS上工作,同樣也可以在其他平台上工作。作為一個獨立開發者,為不同的平台維護基礎程式碼是一項巨大的工作。為單一手機平台編寫高品質的手機應用程式需要全職工作,為每個平台重複做類似的事情需要大量的資源。應用程式能夠在Android和IOS設備上同時工作對我來說是一個巨大收穫。

更進一步,尤其是對於運行Android各種分支的設備,它們大小和形狀各異,想要讓你的應用程式在各種螢幕解析度的手機上看起來都不錯,這是真正的挑戰。對於要求嚴格的Android開發者來說,按照螢幕大小進行設螢幕分割(從完全最小化到最大進行縮放)會需要很多開發時間。由於瀏覽器會在每個裝置上以相同的方式呈現,因此關於這個方面你不必有任何擔心。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn