移動端開發必須知道的小技巧

2022-07-09 06:45:09 字數 3938 閱讀 2388

這個是移動端頁面開發必備的標籤,用來調整布局視口同視覺視口一致,禁止頁面縮放等。

語法:說明:

如果 content 設定為yes,web應用會以全屏模式執行,反之,則不會。content的預設值是no,表示正常顯示。如果選擇全屏模式執行,則會刪除預設的蘋果工具欄和選單欄。

說明:如果content設定為default,則狀態列正常顯示。如果設定為blank,則狀態列會有乙個黑色的背景。如果設定為blank-translucent,則狀態列顯示為黑色半透明。如果設定為default或blank,則頁面顯示在狀態列的下方,即狀態列佔據上方部分,頁面佔據下方部分,二者沒有遮擋對方或被遮擋。如果設定為blank-translucent,則頁面會充滿螢幕,其中頁面頂部會被狀態列遮蓋住(會覆蓋頁面20px高度,而iphone4和itouch4的retina螢幕為40px)。預設值是default。

手機頁面通常在第一次載入後會進行快取,然後每次重新整理會使用快取而不是去重新向伺服器傳送請求。如果不希望使用快取可以設定no-cache。

format-detection 啟動或禁用自動識別頁面中的**號碼。

語法:

說明:

預設情況下,裝置會自動識別任何可能是**號碼的字串。設定telephone=no可以禁用這項功能。

html5提供了自動呼叫撥號的標籤,只要在a標籤的href中新增tel:就可以了。

撥打手機直接如下:

點選撥打15677776767a>

element

這個問題自己網上找了一些解決辦法,僅供參考。

給body設定高度100%

body,html

如果是專案中已經做好的頁面,有其他特效,直接設定這個屬性,可能對頁面的其他功能造成影響。

如果使用此法,本地除錯效果不好,建議不要使用。

transform:translatez(0);

或者transform:translate3d(0,0,0);

多加一層盒子,外層fixed固定定位,內層的設定絕對定位absolute;

style='position: fixed;'>

style='position: absolute'>

...div>

div>

input 輸入框在 iphone 下 游標過長,android顯示正常。

方法:調低 input 標籤的 line-height 樣式值。

在內容出現滾動的元素上設定一條css樣式,實現慣性滾動和彈性效果。

-webkit-overflow-scrolling 屬性控制元素在移動裝置上是否使用滾動回彈效果,它有兩個值:

auto: 使用普通滾動, 當手指從觸控螢幕上移開,滾動會立即停止。

touch:使用具有回彈效果的滾動, 當手指從觸控螢幕上移開,內容會繼續保持一段時間的滾動效果。繼續滾動的速度和持續的時間和滾動手勢的強烈程度成正比。同時也會建立乙個新的堆疊上下文。

方法一:

給最外層的div加上 padding-bottom, 值為 固定定位元素高度;

方法二:

利用偽元素,給最外層div新增偽元素 after,設定高度為 固定定位元素高度。

content: '';

height: '固定定位元素高度';

}

element 

解決辦法:

可以用html5的oninput事件去代替keyup

">document.getelementbyid('test').addeventlistener('input', function(e))

script>

然後就達到類似keyup的效果!

解決辦法:

webview只是乙個承載體、各種內容的渲染需要使用webviewchromclient去實現、所以set乙個預設的基類webchromeclient就行。

ps:這部分需要原生開發協助設定乙個 基類 webchromeclient,**:

webview.setwebchromeclient()

300ms 尚可接受,不過因為300ms產生的問題,我們必須要解決。300ms導致使用者體驗並不是很好,解決這個問題,我們一般在移動端用 tap 事件來取代click 事件。

推薦兩個 js,乙個是 fastclick,乙個是 tap.js。

案例如下:

點透事件測試div>

$('#haorooms').on('tap',function())

我們點選蒙層時 div正常消失,但是當我們在a標籤上點選蒙層時,發現a鏈結被觸發,這就是所謂的點透事件。

原因:touchstart 早於 touchend 早於click。 亦即click的觸發是有延遲的,這個時間大概在300ms左右,也就是說我們tap觸發之後蒙層隱藏, 此時 click還沒有觸發,300ms之後由於蒙層隱藏,我們的click觸發到了下面的a鏈結上。

解決辦法:

盡量都使用 touch 事件來替換click事件。例如用touchend事件(推薦)。

用 fastclick,詳情看上面 github 倉庫。

用preventdefault阻止a標籤的click。

延遲一定的時間(300ms+)來處理事件 (不推薦)。

以上一般都能解決,實在不行就換成click事件。

下面介紹一下touchend事件,如下:

$("#haorooms").on("touchend", function (event) )

可以通過正則去掉

this.value = this.value.replace(/\u2006/g, '')

給 video 標籤新增 屬性:

video>

video>

ps: 如果是內嵌入 webview 下 還需要原生開發的夥伴新增以下支援**:

webview.allowsinlinemediaplayback = yes;
資源搜尋**大全

廣州vi設計公司

[email protected]>

點選後直接給 [email protected] 發郵件,主題為:testobject 。

ps: 如果遇到這種情況失效,可以在頁面頭部 新增 一條meta 標籤,content 設定為 yes。

描述:在開啟的彈窗或者遮罩層上滾動, 會影響到下層的body元素的滾動。 體驗很不好。

解決辦法:

一般思路是在開啟彈框或遮罩層的時候,獲取html的scrolltop, 給body改為fixed定位, top值為負的scrolltop值。 關閉彈框的時候,把fixed定位去掉。還原scrolltop值。

這個基本是我們做移動開發首先需要確定的乙個方案,我總結為一句話:經典的 rem 布局與新秀 vw 布局

當然還有常見的比如 彈性盒子(flex) 都可以。不過需要說的是,** flexible.js 布局的作者已經推薦我們選用 vw 布局。

移動開發者必須知道的Android框架推薦

一些總結出來的android快速開發框架,全部都是開源框架,附帶專案位址,是開發學習的絕佳資料。開發者qq群 230206891 優點 功能看起來比較完善。缺點 這個是個人寫的,從2013年就停止維護了,沒有專案文件。開發者qq群 257053751 優點 功能比較全面,效率很高,文件完善,有專案d...

15個開發者必須知道的chrome技巧

在web開發者中,google chrome是使www.cppcns.com用最廣泛的瀏覽器。六周一次的發布週期和一套強大的不斷擴大開發功能,使其成為了web開發者必備的工具。你可能已經熟悉了它的部分功能,如使用console和debugger 編輯css。在這篇文章中,我們將分享15個有助於改進你...

移動端小技巧

supports display flex supports not display flex supports display webkit flex or display moz flex or use styles here 第一種方法 var supportsflex css.support...