初探富文本之基于虛擬滾動的大型文檔性能優化方案 虛擬滾動是一種優化長列表性能的技術,其通過按需渲染列表項來提高瀏覽器運行效率。具體來說,虛擬滾動只渲染用戶瀏覽器視口部分的文檔數據,而不是整個文檔結構,其核心實現根據可見區域高度和容器的滾動位置計算出需要渲染的列表項,同時不渲染額外的視圖內容。虛擬滾動 ...
從零學習Vue.js 目錄 引言 準備工作 Vue.js 基礎 3.1 Vue 實例 3.2 模板語法 3.3 數據綁定 3.4 計算屬性和偵聽器 3.5 Class 與 Style 綁定 3.6 條件渲染 3.7 列表渲染 3.8 事件處理 3.9 表單輸入綁定 Vue.js 組件 4.1 組件基 ...
一、背景 在日常布局中,無論是兩欄布局還是三欄布局,使用的頻率都非常高 兩欄布局 兩欄布局實現效果就是將頁面分割成左右寬度不等的兩列,寬度較小的列設置為固定寬度,剩余寬度由另一列撐滿, 比如 Ant Design 文檔,藍色區域為主要內容布局容器,側邊欄為次要內容布局容器 這里稱寬度較小的列父元素為 ...
XML Web服務是基于WSDL、SOAP、RDF和RSS等標準的網絡應用程序組件技術。WSDL描述服務接口和消息格式,SOAP用于結構化信息交換,RDF描述網絡資源,RSS則用于發布網站更新。Web服務特點是自包含、自描述,基于開放協議,可重用且能連接現有軟件。WSDL文檔包含`types`、`m... ...
一、是什么 單例模式(Singleton Pattern):創建型模式,提供了一種創建對象的最佳方式,這種模式涉及到一個單一的類,該類負責創建自己的對象,同時確保只有單個對象被創建 在應用程序運行期間,單例模式只會在全局作用域下創建一次實例對象,讓所有需要調用的地方都共享這一單例對象,如下圖所示: ...
為什么會突然想到寫這么一個大雜燴的博文呢,必須要從筆者幾年前的一次面試說起。當時的我年輕氣盛,在簡歷上放了自己的博客地址,而面試官應該是翻了我的博客,好幾道面試題都是圍繞著我的博文來提問。其中一個問題,直接使得空氣靜止了五分鐘,也是自從那次面試,我告訴自己,工作實戰中總結的經驗,一定要知其然知其所以... ...
Unix 時間戳是從1970年1月1日(UTC/GMT的午夜)開始所經過的秒數,不考慮閏秒。 以下2個方法源自于時間工具包:time utils 效果展示:在線時間戳轉換工具 時間轉時間戳 /** * 將某個時間轉化成時間戳 * 時間格式:2019-05-20 00:00:00 或 2019年5月1 ...
1、需求描述 我們日常在使用ECharts實現曲線圖或柱狀圖的時候,x軸上的坐標都是等距離顯示的。 有時候我們可能有這個需求: x軸上的坐標距離按照對應數據的比例進行顯示。 打個比方,假設x軸上有5個點,正常情況下,我們每個點之間的距離都是30px。 這不是我們想要的效果,我們想要的效果是,第一 ...
目錄前端平臺搭建(Vue2.6,App:HBulderX)創建Vue2.6項目下載相應插件方便開發路由配置對連接后端進行一些配置(main.js文件)導入ElementUI組件組件 | Element同步與異步axios異步請求框架 前端平臺搭建(Vue2.6,App:HBulderX) 創建Vue ...
一、場景復現 一個經典的面試題 0.1 + 0.2 0.3 // false 為什么是false呢? 先看下面這個比喻 比如一個數 1÷3=0.33333333...... 3會一直無限循環,數學可以表示,但是計算機要存儲,方便下次取出來再使用,但0.333333...... 這個數無限循環,再大的 ...
效果預覽 視頻畫面 網絡請求 代碼實現 ZLMRTCClient.js 當前使用的版本: 1.0.1 Mon Mar 27 2023 19:11:59 GMT+0800 首先需要修改 ZLMRTCClient.js 的代碼,解決由于網絡導致播放失敗時無法觸發 WEBRTC_OFFER_ANWSER_ ...
什么是 KeepAlive? 用過 Vue 的童鞋都知道 Vue 官方自帶了 Keep-Alive 組件,它能夠使組件在切換時仍能保留原有的狀態信息,并且有專門的生命周期方便去做額外的處理。該組件在很多場景非常有用,比如: tabs 緩存頁面 分步表單 路由緩存 我們先看看 Vue 中是如何使用的, ...
一、 是什么 Node作為一門服務端語言,性能方面尤為重要,其衡量指標一般有如下: CPU 內存 I/O 網絡 CPU 主要分成了兩部分: CPU負載:在某個時間段內,占用以及等待CPU的進程總數 CPU使用率:CPU時間占用狀況,等于 1 - 空閑CPU時間(idle time) / CPU總時間 ...
1?? 原因 由于是一個比較老的項目,所以在做功能時,用到了老項目的一個控件,這一個控件是以前封裝好的,依賴的是jquery-1.6.min.js。但是在做下拉框多選功能時,在網上找了一個下拉框多選的框架,但是這個框架依賴是jquery.js(3.7.1),所以才出現了這個問題。 簡單來說就是新老控 ...
1、是什么 pointer-events 直譯為指針事件,該屬性指定在什么情況下某個DOM可以成為鼠標事件的 target。 簡而言之,就是允許/禁止DOM的鼠標事件(click事件、hover事件、mouse事件等鼠標事件) 2、具體屬性分析 用法分析:pointer-events: auto | ...
前言 眾所周知,當子組件使用setup后,父組件就不能像vue2那樣直接就可以訪問子組件內的屬性和方法。這個時候就需要在子組件內使用defineExpose宏函數來指定想要暴露出去的屬性和方法。這篇文章來講講defineExpose宏函數是如何暴露出去這些屬性和方法給父組件使用。注:本文中使用的vu ...
最近在做鼠標框選的需求,鼠標框選就需要用到 Range 和 Selection 對象。
Range 表示選擇的區間范圍,Selection 表示選擇的文檔內容。
Range 接口表示一個包含節點與文本節點的一部分的文檔片段。
不僅僅可以用于鼠標框選,頁面上任何元素、文本都可以創建 Range。
Se... ...
一、遞歸 遞歸(英語:Recursion) 在數學與計算機科學中,是指在函數的定義中使用函數自身的方法 在函數內部,可以調用其他函數。如果一個函數在內部調用自身本身,這個函數就是遞歸函數 其核心思想是把一個大型復雜的問題層層轉化為一個與原問題相似的規模較小的問題來求解 一般來說,遞歸需要有邊界條件、 ...
一、用途 可視區域即我們瀏覽網頁的設備肉眼可見的區域,如下圖 在日常開發中,我們經常需要判斷目標元素是否在視窗之內或者和視窗的距離小于一個值(例如 100 px),從而實現一些常用的功能,例如: 圖片的懶加載 列表的無限滾動 計算廣告元素的曝光情況 可點擊鏈接的預加載 二、實現方式 判斷一個元素是否 ...
文章關注JavaScript中async/await的異常處理,指出未捕獲異常的潛在風險。1)使用try-catch,雖全面但冗余;2)借助Promise的catch,減少冗余; 3) 利用await-to-js庫簡化異常處理 ...