簡體   English   中英

如何定位具有jQuery移動功能的手機?

[英]How can I target jQuery mobile capable phones?

我使用jQuery Mobile框架制作了一個網絡應用程序,我想為其提供一個針對低規格手機的備用應用程序。

我的問題是...定位支持JQM的電話的最佳方法是什么? 我在jquery論壇上看到了類似的問題。 建議的答案之一是http://detectmobilebrowser.com/ ,它提供了很多手機。

這是最好的方法,還是我應該測試瀏覽器功能,而不是實際針對手機。 如果是后者,哪些特征被視為“ A級”特征?

干杯

漸進式增強是您的目標,jQuery允許您使用單個代碼庫,並且可以在各種設備上使用。

考慮一下:

  • 指向其他頁面的所有鏈接都是常規的html鏈接,在沒有AJAX支持的情況下,鏈接仍然可以使用,因為它們只會將您發送到所需頁面的位置

  • 所有主要框架元素都圍繞列表,鏈接和一些div構建。 無需HTML5即可呈現內容

  • 最低限度,所有電話都可以顯示大量樣式,無論功能多么強大,您都可以顯示內容

如果沒有完全支持jQuery mobile,您是否有自定義界面根本無法使用?

我同意,降級是最好的解決方案。 我要補充一點,使用noscript標記也是一種不錯的方法,可以通過為不支持JS的手機通過HTML添加添加功能來提供優美的降級效果。

我認為很難找到定義手機是否可以與JQM一起使用的瀏覽器功能(甚至是一組功能)。 以我自己的經驗,我曾使用WURFL(一個開放源代碼設備檢測庫)來提供功能信息。 但是,我用它來定位特定設備以包括特定於設備的CSS,並刪除了我不支持它的其他設備的所有JS(以消除正在下載的JS的開銷)。

WURFL: http ://wurfl.sourceforge.net/

JQM宣傳它提供了正常降級:

優雅降級:jQuery Mobile使用最好的HTML 5和CSS 3功能,以在功能最強大的瀏覽器中提供最佳體驗。 但是,我們不認為這是一個全有或全無的主張:性能不佳的瀏覽器仍將獲得其平台可以處理的最佳體驗。 它們可能沒有最佳平台的所有漸變或花哨過渡,但它們仍將非常有用。 最基本的瀏覽器將很容易降級為簡化的HTML和CSS。

我還測試了單個移動頁面中的多個JQM頁面,這些頁面在JQM中運行很好(非常快),但遇到了上述相同的問題(當在智能手機的瀏覽器中關閉javascript時,所有頁面都會顯示)。 要變通解決此問題,每個JQM頁僅使用一個頁面(盡管您放棄了速度和統一的頁面轉換)。 關於NOSCRIPT標簽選項, 並非所有瀏覽器都普遍認可該標簽。 要變通解決此問題,您可以嘗試執行以下操作:

<div id="no-js">
<!-- Place HTML without javascript here -->
</div>
<div id="js">
<script language="javascript">
// place javascript here which would be ignored by browsers not support javascript or with
// javascript turned off
document.getElementById("no-js").style.display = "none"; // be sure to hide the non javascript
// div
</script>
</div>

以上邏輯既可以在NOSCRIPT標記類型的瀏覽器中使用,也可以在不識別NOSCRIPT的瀏覽器中使用。

dlausch

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM