亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > HTML5 > 正文

HTML5移動端開發遇見的東西

2024-09-05 07:19:29
字體:
來源:轉載
供稿:網友

常見的有viewport、強制瀏覽器全屏、IOS的Web APP模式、可點擊元素出現陰影

本文主要講一些其他的或者實用的優化手段。

1. 彈出數字鍵盤

<!-- 有"#" "*"符號輸入 --><input type="tel"><!-- 純數字 --><input pattern="/d*">

安卓跟IOS的表現形式應該不一樣,大家可以自己試試。當運用了正則pattern后,就不用關注input的類型了。

2. 調用系統的某些功能

<!-- 撥號 --><a href="tel:10086">打電話給: 10086</a><!-- 發送短信 --><a href="sms:10086">發短信給: 10086</a><!-- 發送郵件 --><a href="mailto:839626987@qq.com">發郵件給:839626987@qq.com</a><!-- 選擇照片或者拍攝照片 --><input type="file" accept="image/*"><!-- 選擇視頻或者拍攝視頻 --><input type="file" accept="video/*"><!-- 多選 --><input type="file" multiple>

3. 打開原生應用

<a href="weixin://">打開微信</a><a href="alipays://">打開支付寶</a><a href="alipays://platformapi/startapp?saId=10000007">打開支付寶的掃一掃功能</a><a href="alipays://platformapi/startapp?appId=60000002">打開支付寶的螞蟻森林</a>

這種方式叫做URL Scheme,是一種協議,一般用來訪問APP或者APP中的某個功能/頁面(如喚醒APP后打開指定頁面或者使用某些功能)

URL Scheme的基本格式如下:

行為(應用的某個功能/頁面)
|
scheme://[path][?query]
| |
應用標識 功能需要的參數

一般是由APP開發者自己定義,比如規定一些參數或者路徑讓其他開發者來訪問,就像上面的例子

注意事項:

  • 喚醒APP的條件是你的手機已經安裝了該APP
  • 某些瀏覽器會禁用此協議,比如微信內部瀏覽器(除非開了白名單)
     

4. 解決active偽類失效

<body ontouchstart></body>

給body注冊一個空事件即可

5. 忽略自動識別

<!-- 忽略瀏覽器自動識別數字為電話號碼 --><meta name="format-detection" content="telephone=no"><!-- 忽略瀏覽器自動識別郵箱賬號 --><meta name="format-detection" content="email=no">

當頁面上的內容包含了手機號/郵箱等,會自動轉換成可點擊的鏈接

比如你有如下代碼:

<p>13192733603</P>

但是有些瀏覽器會識別為手機,并且可以點擊撥號

6. 解決input失焦后頁面沒有回彈

一般出現在IOS設備中的微信內部瀏覽器,出現的條件為:

  • 頁面高度過小
  • 聚焦時,頁面需要往上移動的時候

所以一般input在頁面上方或者頂部都不會出現無法回彈

解決辦法為,在聚焦時,獲取當前滾動條高度,然后失焦時,賦值之前獲取的高度:

<template>  <input type="text" @focus="focus" @blur="blur"></template><script>  export default {    data() {      return {        scrollTop: 0      }    },    methods: {      focus() {        this.scrollTop = document.scrollingElement.scrollTop;      },      blur() {        document.scrollingElement.scrollTo(0, this.scrollTop);      }    }  }</script>

7. 禁止長按

以上行為可以總結成這幾個(每個手機以及瀏覽器的表現形式不一樣):長按圖片保存、長按選擇文字、長按鏈接/手機號/郵箱時呼出菜單。

想要禁止這些瀏覽器的默認行為,可以使用以下CSS:

// 禁止長按圖片保存img {  -webkit-touch-callout: none;  pointer-events: none; // 像微信瀏覽器還是無法禁止,加上這行樣式即可}// 禁止長按選擇文字div {  -webkit-user-select: none;}// 禁止長按呼出菜單div {  -webkit-touch-callout: none;}

8. 滑動不順暢,粘手

一般出現在IOS設備中,自定義盒子使用了overflow: auto || scroll后出現的情況。

優化代碼:

div {  -webkit-overflow-scrolling: touch;}

9. 屏幕旋轉為橫屏時,字體大小會變

具體出現的情況不明,有時候有有時候沒有,歡迎指出。

優化代碼:

* {  -webkit-text-size-adjust: 100%;}

10.最簡單的rem自適應

大家都知道,rem的值是根據根元素的字體大小相對計算的,但是我們每個設備的大小不一樣,所以根元素的字體大小要動態設置

html { font-size: calc(100vw / 3.75);}body {  font-size: .14rem;}

效果如下:

11. 滑動穿透

當你想在出現遮罩的時候,鎖住用戶的滾動行為,你可以這么做。

假設HTML結構如下:

<div class="mask">  <div class="content">我是彈框</div></div>

CSS樣式如下:

.mask {  position: fixed;  top: 0;  left: 0;  display: flex;  justify-content: center;  align-items: center;  width: 100%;  height: 100%;  background-color: rgba($color: #333, $alpha: .6);  .content {    padding: 20px;    background-color: #fff;    width: 300px;  }}

效果如下:

可以看到,當在遮罩上滑動的時候,是會穿透到父節點的,最簡單的辦法就是阻住默認行為:

document.querySelector(".mask").addEventListener("touchmove", event => {  event.preventDefault();});

如果在vue中,你可以這么寫:

<div class="mask" @touchumove.prevent></div>

如果.content也有滾動條,那么只要阻止遮罩本身就行:

document.querySelector(".mask").addEventListener("touchmove", event => {  if (event.target.classList.contains("mask")) event.preventDefault();});

或者:

<div class="mask" @touchumove.self.prevent></div>

這樣,當出現遮罩的時候用戶的滑動就會被鎖住啦

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97香蕉久久夜色精品国产| 国产女人18毛片水18精品| 蜜臀久久99精品久久久久久宅男| 亚洲aa在线观看| 国产精品91免费在线| 在线观看日韩专区| 国产精品久久久久久一区二区| 91免费视频网站| 午夜精品视频在线| 91超碰中文字幕久久精品| 精品国产一区二区三区久久狼黑人| 国产精品免费看久久久香蕉| 91深夜福利视频| 欧美成人午夜激情在线| 日本一区二区三区四区视频| 性欧美在线看片a免费观看| 欧美激情久久久| 午夜免费在线观看精品视频| 欧美性猛交xxxx黑人| 欧美成人午夜影院| 自拍视频国产精品| 91免费精品视频| 黑人巨大精品欧美一区二区一视频| 久久中文字幕视频| 岛国视频午夜一区免费在线观看| 成人免费在线视频网址| 亚洲欧美另类国产| 欧美成人激情视频免费观看| 国产日韩换脸av一区在线观看| yellow中文字幕久久| 日本精品视频网站| 97精品欧美一区二区三区| 日韩av第一页| 日韩中文字幕视频| 日韩av综合网站| 亚洲国产精久久久久久| 日韩精品亚洲精品| 欧美一级成年大片在线观看| 国产成人av在线播放| 狠狠躁夜夜躁人人爽超碰91| 黑人极品videos精品欧美裸| 国产精品第一区| 日韩欧美国产激情| 欧美日韩亚洲成人| 久久不射电影网| 日本精品性网站在线观看| 久久久久五月天| 中文字幕视频一区二区在线有码| 麻豆乱码国产一区二区三区| 一本一本久久a久久精品综合小说| 亚洲电影在线看| 欧美体内谢she精2性欧美| 欧美极品欧美精品欧美视频| 欧美一级bbbbb性bbbb喷潮片| 国产日韩在线观看av| 精品亚洲一区二区三区在线播放| 欧美电影在线观看网站| 51视频国产精品一区二区| 色天天综合狠狠色| 日韩a**站在线观看| 黑人欧美xxxx| 国产热re99久久6国产精品| 午夜精品99久久免费| 久久精品国产91精品亚洲| 国产精品99一区| 国产午夜精品一区二区三区| 成人欧美一区二区三区黑人| 亚洲国产精品人人爽夜夜爽| 日韩成人在线视频观看| 亚洲国产高清高潮精品美女| 欧美日韩国产二区| 午夜精品一区二区三区视频免费看| 久久久亚洲精品视频| 成人网中文字幕| 欧美床上激情在线观看| 国产激情999| 亚洲国产精品小视频| 亚洲人成网在线播放| 国产精品久久久久久超碰| 欧美又大粗又爽又黄大片视频| 成人福利网站在线观看11| 日本午夜在线亚洲.国产| 高清欧美性猛交xxxx| 国产精品96久久久久久| 在线观看欧美www| 欧美一级在线播放| 久久99精品视频一区97| 狠狠色香婷婷久久亚洲精品| 国产精品你懂得| 色av中文字幕一区| 久久99久久99精品免观看粉嫩| 国产日韩av在线| 69**夜色精品国产69乱| 亚洲图片在区色| 色爱av美腿丝袜综合粉嫩av| 精品视频在线观看日韩| 91亚洲精品一区| 黄色成人在线播放| 亚洲人精选亚洲人成在线| 久久人人爽人人爽人人片av高清| 日韩电视剧在线观看免费网站| 亚洲精品国产成人| 亚洲精品xxx| 国产一区深夜福利| 欧美专区在线观看| 一区二区在线视频| 狠狠色香婷婷久久亚洲精品| 久久久久在线观看| 永久免费毛片在线播放不卡| 欧美日产国产成人免费图片| 成人免费在线视频网站| 日韩亚洲在线观看| 精品久久久一区| 国产成人精品久久二区二区| 欧美激情aaaa| 久久久久久国产| 久久九九国产精品怡红院| 亚洲成人精品久久久| 97久久精品人人澡人人爽缅北| 亚洲护士老师的毛茸茸最新章节| 国产精品小说在线| www.日韩不卡电影av| 亚洲第一区中文99精品| 亚洲精品成a人在线观看| 亚洲自拍偷拍在线| 日韩中文字幕欧美| 青青久久aⅴ北条麻妃| 久久久久久亚洲精品不卡| 欧美亚洲成人精品| 亚洲欧美在线x视频| 欧美另类老肥妇| 国产欧美日韩亚洲精品| 国产亚洲精品久久久久动| 2019中文字幕全在线观看| 国产精品久久久久久久久久东京| 中文字幕在线看视频国产欧美在线看完整| 久久99青青精品免费观看| 亚洲欧美国产另类| 成人激情视频在线播放| 欧美日韩国产中文精品字幕自在自线| 国产亚洲免费的视频看| 日韩美女在线播放| 亚洲男人天堂视频| 2019中文字幕免费视频| 欧美色播在线播放| 不卡伊人av在线播放| 午夜剧场成人观在线视频免费观看| 精品国产精品自拍| 亚洲精品成人久久| 亚洲专区中文字幕| 欧美超级乱淫片喷水| 日本a级片电影一区二区| 欧美成人午夜激情| 国内成人精品视频| 毛片精品免费在线观看| 欧美裸体视频网站| 中文字幕欧美日韩在线| 91精品国产色综合久久不卡98口| 国产乱肥老妇国产一区二| 亚洲视频在线观看网站| 亚洲剧情一区二区| 国产综合福利在线| 日韩在线视频播放| 亚洲精品色婷婷福利天堂|