本文演示瞭如何使用JavaScript創建動畫粉絲HTML<canvas></canvas>
,還有一些幾何形狀。可以動態更新網站選項卡旁邊顯示的小圖標,以顯示加載進度。在背景中執行長任務(例如上傳照片)時,這特別有用。
關鍵是利用<canvas></canvas>
元素繪製動畫,然後使用渲染圖像更新Favicon。本文提供了逐步指南:
1。 html設置:添加一個<canvas></canvas>
元素和隱藏<link>
favicon的元素到您的HTML。這<canvas></canvas>
元素將用於繪製動畫,然後<link>
元素將被更新以將動畫顯示為Favicon。兩者都是尺寸的32x32像素,標準粉絲大小。為了演示目的,添加了一個按鈕以觸發動畫。
<link href="" rel="icon" type="image/png" width="32px"> <canvas height="32" hidden="" width="32"></canvas> <button>載入</button>
2。 javaScript動畫: JavaScript代碼首先檢查帆布支持。按鈕單擊事件處理程序使用setInterval
啟動動畫,以60ms的間隔調用drawLoader
功能。
onload =()=> { canvas = document.queryselector('canvas'), context = canvas.getContext('2d'); 如果(!!上下文){ //支持帆布 } }; button = document.queryselector('button'); button.AddeventListener('click',function(){ n = 0; loadingInterval = setInterval(drawloader,60); });
3。樣式和繪圖:為動畫線定義了線性梯度。 drawLoader
函數清除了畫布,然後繪製一部分正方形,從而在四個25間隔階段上增加了繪製線。每個間隔之後,畫布含量將轉換為png並將其設置為最愛。
令梯度= context.createLineargradient(0,0,32,32); 漸變addcolorStop(0,'#c7f0fe'); 漸變addcolorStop(1,'#56D3C9'); context.strokestyle =漸變; context.linewidth = 8; 功能drawloader(){ 與(上下文){ ClearRect(0,0,32,32); BeginPath(); // ...(繪圖邏輯 - 請參閱原始文章以獲取完整代碼)... } // ...(Favicon Update Logic-請參閱原始文章以獲取完整代碼)... }
完整的圖形邏輯使用簡單的幾何形狀來計算動畫的每個階段的線端點。本文提供了數學公式和相應的代碼。最後一步涉及將畫佈內容轉換為數據URL並更新的href
屬性<link>
元素將動畫顯示為Favicon。
完整的代碼可在GitHub上找到(原始文章中提供的鏈接)。該技術可以適應不同的形狀和填充樣式來實現各種動畫效果。
以上是動畫粉絲的製作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

對於Astro,我們可以在構建過程中生成大部分網站,但是有一小部分服務器端代碼可以使用Fuse.js之類的搜索功能來處理搜索功能。在此演示中,我們將使用保險絲搜索一組個人“書籤”


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

Atom編輯器mac版下載
最受歡迎的的開源編輯器

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。