博客 / 列表

前端路引 - 還在痛苦前端的拖拽排序嗎?SortableJS 輕鬆搞定

產品扔過來一個需求:這個列表需要實現拖拽排序,心裏面慌不慌? 如果要手搓一個這個功能,那代碼可就很感人了。 大概有這麼些邏輯:鼠標按下 - 開始拖動 - 拖動中實時改變位置 - 拖動結束判斷是否允許釋放 - 不允許縮放怎麼做 - 允許縮放又怎麼做。 要實現這一大堆邏輯,那畫面很美~~ 別慌,面向 github 編程,已經有人造了輪子,咱們用起來即可。 SortableJS 項目主頁:https:

前端

前端路引 - 瀏覽器 15 個常見指紋特徵,使用插件 FingerprintJS 生成瀏覽器指紋

瀏覽器指紋是什麼? 像人類的指紋一樣,瀏覽器指紋也是用於唯一身份認證的一種標識。 這東東常被廣告商用於用户跟蹤,比如 A、B 網站都添加了一個廣告商,如果用户訪問了 A 網站,查看了些商品或文章,然後再訪問 B 網站,那麼廣告商就知道用户對哪些東西感興趣,就可以在 B 網站中投放一些感興趣的廣告。 瀏覽器指紋起的作用就是給用户打上唯一標識,用户每次訪問網頁都會被獲取到這個唯一標識符,這樣就實現了用

前端

前端路引 - Web前端入門第 90 問:JavaScript 也能無中生有的創建音頻

網頁播放音樂這個常識應該都知道,畢竟百度 MP3 搜索可是風靡一時! 但使用瀏覽器無中生有的創建音頻,在 HTML5 規範落地之前可是一片空白。 AudioContext 的體量與 Canvas 差不了多少,一個針對圖形圖像,一個用於音頻,兩者結合起來就把 flash 給拉下了神壇~~ 本文源之於一次技術研究,曾經有一個需求要用 H5 搞一個網頁 K 歌,技術難點在於要將原唱、伴唱、錄音的音頻數

前端

前端路引 - Web前端入門第 83 問:JavaScript localStorage 有大小限制嗎?溢出會怎樣?

本地存儲除了 Cookie 外,還有 localStorage 和 sessionStorage,本文一探 localStorage。 localStorage 此 API 存入的數據會 永久 保存在瀏覽器中,除非用户手動刪除。 localStorage 能用於同一瀏覽器同一域名跨標籤頁通信。 同一瀏覽器無痕模式和非無痕模式下,localStorage 存儲的數據無法互通,且無痕模式存入的數據在瀏

前端 , Javascript

前端路引 - Web前端入門第 84 問:JavaScript sessionStorage 那些容易踩坑的地方

sessionStorage 與 localStorage 差不多可以算作一對兄弟,它倆的暴露的 API 方法一模一樣。 但兩者也有不同點: 1、sessionStorage 存入的數據在頁面關閉後,會自動清除。 2、相同 URL 的每個 tab 頁籤的 sessionStorage 會被隔離,互不影響。也就是説相同的鏈接,在 A 標籤頁打開和在 B 標籤打開,A 寫入的 sessionSt

前端 , Javascript

前端路引 - Web前端入門第 85 問:JavaScript 一個簡單的 IndexedDB 數據庫入門示例

在前端風風雨雨的混了多年,從沒在項目中實際使用過 IndexedDB 這個瀏覽器端的數據庫,所以今天就摸了下 MDN 的後門,寫一個簡單的入門示例。 頁面大概長這樣: 源碼: 以下代碼包含了一個數據庫所有的 CRUD (增刪改查)操作。 div button id="js_add_btn"添加書籍/button /div div input type="text" name="" id=

前端 , Javascript

前端路引 - Web前端入門第 86 問:JavaScript 中的 Web Worker 為什麼能提升代碼性能?

最初的 JS 執行代碼都是一條線執行到底,當遇到比較耗時的操作時,比如大數組循環運算,就會導致頁面卡着,就像假死一樣。就像一個人在廚房燒菜一樣,需要依次完成切菜、炒菜、裝盤這些步驟,此過程中沒辦法同時做其他事情,必須按順序執行每一個步驟。 Web Worker 賦予了 JS 分配任務的能力,在遇到複雜的計算型任務時,比如 canvas 圖形圖像處理(添加濾鏡、矩陣變換等),此類不依賴 DOM 操作

前端 , Javascript

前端路引 - Web前端入門第 88 問:引入 JavaScript 的 script 標籤究竟有多少用法?

HTML 版本不停的更新迭代,也導致瀏覽器支持的寫法眼花繚亂,就拿 script 標籤來説,剛剛入行的那會兒就只知道用來寫內聯的 js 代碼,後來又學到了引入 js 文件,ES 模塊規範化之後又知道能用來引入模塊化的 js 代碼,可這就是它的全部了嗎?? 然而...並不是!!! 各種用法 看看 script 千奇百怪的用法,一定有你沒見過的~~ 1、內聯腳本 如文章開頭説的一樣,直接用來寫內聯腳本

前端 , Javascript

前端路引 - Web前端入門第 89 問:總結 8 種跨域通信處理方案

為什麼會跨域?跨域是誰附加的限制?為什麼 APP 不會有跨域問題? 首先跨域問題是由於瀏覽器的同源策略(Same-Origin Policy)導致的,基本上所有瀏覽器都有限制,默認情況是不允許跨域訪問的!! APP 的請求不受瀏覽器的同源策略限制,所以不存在跨域。類似一個服務器像另一個服務器發起請求一樣,也不會受跨域影響。 想想一下:如果瀏覽器沒有同源策略限制,A 網站可以隨意訪問 B 網站內容,

前端