移動端前端開發遇到過的Andorid和IOS的差異記錄

移動端前端開發遇到過的安卓和蘋果的差異記錄

  • 1. 引入外部資源,最好用https
  • 2. IOS時間戳獲取NaN問題
  • 3. 金額三位分節顯示方式
  • 4. .webp圖片支持問題

1. 引入外部資源,最好用https

ios處于安全性的考慮,不大支持http引入外部資源,所以引入外部資源的時候最好用https,防止引入失敗

2. IOS時間戳獲取NaN問題

ios識別不了時間文本里的-,所以用時間文本獲取時間戳的時候要做一下處理
時間格式里的-需要替換為/

let time = '2022-11-11'.replace(/-/g, "/");
let date = Date.parse(`${time} 23:59:59`);

3. 金額三位分節顯示方式

toLocaleString在部分蘋果手機不能用

money.toLocaleString();
// 不兼容小數filtermoney(money, decimal, symbol) {if (!money || isNaN(money)) return "0";var num = parseFloat(money);num = String(num.toFixed(decimal ? decimal : 0));var re = /(-?\d+)(\d{3})/;while (re.test(num)) {num = num.replace(re, "$1,$2");}return symbol ? symbol + num : num;},
// 兼容小數,小數部分不分節
if (!money || isNaN(money)) return "0";return money.toString().replace(/\B(?<!\.\d*)(?=(\d{3})+(?!\d))/g, ",");

4. .webp圖片支持問題

.webp圖片在一些蘋果手機上無法顯示,可以使用字符串的 replace() 方法,將 webp 的后綴名替換為 jpg 的后綴名

監聽error事件,當事件目標位img標簽時,替換圖片路徑中的webp

document.addEventListener("error",(e) => {let target = e.target;const tagName = target.tagName || "";let type = tagName.toLowerCase();console.log(tagName.toLowerCase());if (tagName.toLowerCase() === "img" && !target.flag) {target.flag = true;target.src = target.src.replace("format,webp", "format,jpg");}target = null;},true
);

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/24220.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/24220.shtml
英文地址,請注明出處:http://en.pswp.cn/web/24220.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【kubernetes】探索k8s集群的配置資源(secret和configma)

目錄 一、Secret 1.1Secret 有四種類型 1.2Pod 有 3 種方式來使用 secret 1.3應用場景&#xff1a;憑據 1.4創建 Secret 1.4.1用kubectl create secret命令創建Secret 1.4.2內容用 base64 編碼&#xff0c;創建Secret 1.4.2.1Base64編碼 1.4.2.2創建YAML文件 1.4.2.3…

《計算機網絡》

計算題【33】 題目:假設一個有噪聲信道的帶寬為3KHz,信噪比為30dB,則該信道的最大數據傳輸速率是多少? C = W log2(1+S/N)(bit/s)=3000Hz* log2(1+30)= 29.9kbps 題目:一個網絡中,設定的IP地址范圍是:172.88.32.1至172.88.32.254,試確定其合適的子網掩碼。 分析第…

「前端+鴻蒙」鴻蒙應用開發預覽模擬器運行

在鴻蒙應用開發中&#xff0c;預覽和模擬器運行是開發流程中的重要環節&#xff0c;它們允許開發者在不使用實體設備的情況下測試應用的界面和功能。以下是如何使用華為DevEco Studio進行預覽和在模擬器上運行鴻蒙應用的詳細步驟&#xff0c;以及相應的示例代碼。 快速體驗-預覽…

277 基于MATLAB GUI火災檢測系統

基于MATLAB GUI火災檢測系統&#xff0c;可以實現圖片和視頻的火苗檢測。火焰識別的三個特征&#xff1a;1個顏色特征&#xff0c;2個幾何特征顏色特征&#xff1a;HSV顏色空間下&#xff0c;對三個通道值進行閾值濾波&#xff0c;幾何特征1&#xff1a;長寬比&#xff0c;幾何…

用 Python 擼一個 Web 服務器-第3章:使用 MVC 構建程序

Todo List 程序介紹 我們將要編寫的 Todo List 程序包含四個頁面&#xff0c;分別是注冊頁面、登錄頁面、首頁、編輯頁面。以下分別為四個頁面的截圖。 注冊頁面&#xff1a; 注冊 登錄頁面&#xff1a; 登錄 首頁&#xff1a; 首頁 編輯頁面&#xff1a; 編輯 程序頁面非…

程序員搞副業一些會用到的工具

微信號采集(爬蟲)技術的選型 那么&#xff0c;我們應該使用什么技術來從龐大的網頁內容中自動篩選和提取微信號呢&#xff1f;答案就是&#xff1a;數據采集技術&#xff0c;也就是爬蟲技術。 然而&#xff0c;數據采集技術種類繁多&#xff0c;我們具體應該采用哪一個呢&…

【Linux】—— 線程控制的基本介紹

目錄 &#xff08;一&#xff09;POSIX線程庫 &#xff08;二&#xff09;創建線程 2.1 線程ID及進程地址空間布局 &#xff08;三&#xff09;線程終止 &#xff08;四&#xff09;分離線程 &#xff08;一&#xff09;POSIX線程庫 POSIX線程庫&#xff08;POSIX Thread…

Node.js后端構建指南:MongoDB與Express的集成

安裝express 安裝 Express 并將其保存到依賴列表中&#xff1a; $ cnpm install express --save 以上命令會將 Express 框架安裝在當前目錄的 node_modules 目錄中&#xff0c; node_modules 目錄下會自動創建 express 目錄。以下幾個重要的模塊是需要與 express 框架一起安…

nss刷題(4)

1、[SWPUCTF 2021 新生賽]easyrce <?php error_reporting(0); highlight_file(__FILE__); if(isset($_GET[url])) { eval($_GET[url]); } ?> if(isset($_GET[url])) isset函數用來檢測url變量是否存在&#xff1b;$_GET函數獲取變量數據 eval($_GET[url]); eval函數用…

【GIS矢量切片】tippecanoe在Windows和CentOS中的安裝

組件安裝記錄 背景介紹Windows下安裝1、下載工具2、存放安裝包3、進入DOS終端4、在終端執行命令5、下載程序6、放置源碼7、修改配置信息8、編譯9、測試10、參數說明瓦片輸出瓦片描述和權屬信息輸入文件和圖層名輸入文件的并行處理輸入文件的投影縮放級別瓦片分辨率CentOS 7安裝…

嘗試用 GPT-4o 寫 2024高考語文作文

文章目錄 新課標I卷科技進步與問題的演變 新課標II卷抵達未知之境&#xff1a;探索與成長的旅程 全國甲卷坦誠交流&#xff1a;構建真正相遇的橋梁 北京卷歷久彌新 天津卷定義與自定義&#xff1a;在世界的繽紛中前行 上海卷認可度的思考與反思 新課標I卷 閱讀下面的材料&#…

Mongodb---java篇

一、導入依賴 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId></dependency> 二、編寫配置文件連接Mongodb 我的認證數據庫是admin&#xff0c;你們可能不一樣 sp…

第三篇——大數據思維的科學基礎

目錄 一、背景介紹二、思路&方案三、過程1.思維導圖2.文章中經典的句子理解3.學習之后對于投資市場的理解4.通過這篇文章結合我知道的東西我能想到什么&#xff1f; 四、總結五、升華 一、背景介紹 大數據時代&#xff0c;大數據思維的重要性不言而喻&#xff1b;而信息在…

Elasticsearch搜索優化-自定義路由規劃(routing)

在es的實踐學習中&#xff0c;我覺得它的文檔是最好的老師&#xff0c;所以先把這部分鏈接貼出來&#xff0c;本文只是引導&#xff0c;文檔全是細節&#xff0c;還是推薦大家事后認真看看文檔 Metadata fields-routing 在es搜索中&#xff0c;請求是先分發到所有分片&#x…

6月26~28日,2024北京國際消防展即將開幕!

隨著社會的快速發展&#xff0c;消防安全日益受到廣大民眾的高度關注。為了進一步推動消防科技的創新與發展&#xff0c;提升全民消防安全意識&#xff0c;2024年北京消防展將于6月26日在北京國家會議中心盛大開展。目前:觀眾預登記已全面啟動&#xff0c;廣大市民和業界人士可…

馬爾科夫性質-舉例簡單說明,馬爾科夫模型和隱馬爾科夫模型在自然語言處理方面應用是什么

目錄 馬爾科夫模型應用 馬爾科夫性質,舉例簡單說明 馬爾科夫模型 馬爾科夫鏈 馬爾科夫決策過程(Markov Decision Process, MDP) 例子 隱馬爾科夫模型(Hidden Markov Model, HMM) 馬爾科夫模型和隱馬爾科夫模型在自然語言處理方面應用是什么 馬爾科夫模型在自然語言…

SQLite3(1):介紹安裝與測試

目錄 1、SQLite3介紹 2、SQLite3的優勢和特性 3、SQLite3安裝與測試 3.1 SQLite3安裝 3.2 SQLite3測試 4、SQLite3簡單使用 4.1 連接數據庫文件 4.2 創建信息表 4.3 插入三個學生信息 4.4 確認信息 5、總結 1、SQLite3介紹 SQLite3是一種輕量級的關系型數據庫管理系…

論文閱讀 A Distributional Framework for Data Valuation

本論文解決的問題 量化數據價值&#xff08;機器學習模型訓練中各個數據點的貢獻&#xff09; 避免數據價值受到其所處數據集的影響&#xff0c;使數據點的估值更加穩定、一致 變量假設 假設 D 表示一個在全集 Z 上的數據分布。對于監督學習問題&#xff0c;我們通常認為 Z…

jvm學習筆記(一) ----- JAVA 內存

JAVA 內存 一、程序計數器二、虛擬機棧三、本地方法棧四、堆五、非JAVA內存(堆外內存)1.元空間(Metaspace)2.直接內存 鏈接: jvm學習筆記(二) ----- 垃圾回收 鏈接: jvm學習筆記(三) ----- 垃圾回收器 一、程序計數器 虛擬機需要通過『程序計數器』記錄指令執行到哪了。線程要…

代碼隨想錄算法訓練營day43

題目&#xff1a;1049. 最后一塊石頭的重量 II 、494. 目標和、474.一和零 參考鏈接&#xff1a;代碼隨想錄 1049. 最后一塊石頭的重量 II 思路&#xff1a;本題石頭是相互粉碎&#xff0c;粉碎后剩下的重量就是兩塊石頭之差&#xff0c;我們可以想到&#xff0c;把石頭分成…