Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
構建現代網頁時,圖片是不可或缺的元素之一。它們能夠增強視覺吸引力,幫助傳達信息,并提升用戶體驗。然而,如果圖片沒有得到適當的優化,它們可能會顯著拖慢網站的加載速度,影響用戶體驗和搜索引擎優化(SEO)。在本文中,我們將探討不同的圖片格式,并提供優化這些格式的策略和示例。
根據圖片內容和用途選擇最合適的格式。例如,對于網頁上的照片,JPEG可能是最佳選擇,因為它在保持相對較小的文件大小的同時提供了良好的圖像質量。對于需要透明背景的圖標,PNG可能更合適。
使用工具或服務壓縮圖片,減少文件大小。例如,使用在線工具如 TinyPNG 來壓縮PNG文件,或者使用 Adobe Photoshop 的“存儲為Web所用格式”功能來減小JPEG文件的大小。
根據需要在網頁中顯示的大小調整圖片尺寸。不要上傳超大的圖片然后依賴瀏覽器縮放,因為這會導致不必要的加載時間。
通過 HTML5 的 <picture> 元素或 srcset 和 sizes 屬性,可以為不同屏幕尺寸提供不同大小的圖片。
對于非視口內的圖片,可以使用延遲加載(lazy loading)技術。這樣,只有當用戶滾動到圖片位置時,圖片才會加載。
使用內容分發網絡(CDN)來分發圖片,可以減少加載時間,因為圖片會從離用戶最近的服務器加載。
假設你有一個高分辨率的照片,原始尺寸為4000x3000像素,文件大小為5MB。如果這張照片要在網頁上以800x600像素的尺寸展示,那么:
優化后的圖片可能只有100KB左右,大大減少了加載時間。
如果你有一個圖標,需要在網頁上以多種尺寸展示,并且需要透明背景:
圖片優化對于提高網頁加載速度至關重要。通過選擇合適的圖片格式,壓縮文件大小,調整尺寸,使用響應式圖片技術,實現延遲加載,以及利用CDN,可以確保圖片在不犧牲質量的情況下快速加載。這不僅能提升用戶體驗,還能對SEO產生積極影響。
ebStorage的目的是克服由cookie所帶來的一些限制,當數據需要被嚴格控制在客戶端時,不需要持續的將數據發回服務器。
WebStorage兩個主要目標:
(1)提供一種在cookie之外存儲會話數據的路徑。
(2)提供一種存儲大量可以跨會話存在的數據的機制。
web存儲更加安全與快速,這些數據還不會保存到服務器,還可以存儲大量數據而不影響網站性能。
不管是 localStorage 還是 sessionStorage 使用方法都是一樣的語法,對常見操作語法進行示范。以下就以localStorage為例:
常見操作語法:
localStorage.key = value
localStorage.setItem(key,value)
localStorage.key
localStorage.getItem(key)
localStorage.removeItem(key)
delete localStorage.key
數據都是以鍵值對形式存在的,操作的時候與json有點類似。
應用1:取出本地存儲的所有數據,以localStorage為例。
localStorage和sessionStorage是兩個對象,類似json。可遍歷取出數據,如:
localStorage.user = "倩倩"
localStorage.age = "18"
localStorage.job = "打雜"
console.log(localStorage)// {job: "打雜", age: "18", user: "倩倩", length: 3}
for(key in localStorage){
console.log(`${key}--${localStorage[key]}`)
}
運行程序之后,結果如圖:
我們發現遍歷的時候把localStorage的屬性和方法全部打印出來了,而我們需要的只是我們存儲的三個數據,其余的都不要,此時我們換個方法。
localStorage.user = "倩倩"
localStorage.age = "18"
localStorage.job = "打雜"
console.log(localStorage)// {job: "打雜", age: "18", user: "倩倩", length: 3}
for(let i=0;i<localStorage.length;i++){
let key = localStorage.key(i)
console.log(`${key}:${localStorage[key]}`)
}
此時運行結果就是我們需要的結果了!
記住用戶登錄信息、存草稿、存郵件等經常會使用 localStorage,我們介紹下幾種存儲方式的區別,可以更好地根據需求選擇存儲方式。
cookies 和 sessionStorage、localStorage區別如圖:
上述看三者存儲大小有很大差異,存儲內容上也不同,cookie只能保存字符串類型,但sessionStorage和localStorage能夠支持任何類型的對象存儲。如果保存復雜json數據時,可以轉成字符串保存,取出時通過JSON.parse()轉成json格式。
安全性方面,web 存儲不會發送到服務器端,不用擔心被截獲,所以相對cookie安全些。
實例:網頁中寫信,自動保存草稿,網頁關閉重新打開之后數據依舊存在。
<textarea name="" id="email" cols="30" rows="10" oninput="save()"></textarea>
<script>
function save(){
var x = document.getElementById("email")
localStorage.setItem('email',x.value)
}
window.onload =function(){
var x = document.getElementById("email")
x.value = localStorage.getItem("email")
}
</script>
注意:如果你是直接使用瀏覽器打開html文件,此時發現并不會存儲,需要聲明下存儲是針對域的,所以我們需要放到服務內,服務內訪問才可以進行緩存。
需要的同學自己去下載個nginx。
字中夾著圖片,圖片也需要文字說明,文字和圖片相輔相成,就有了絢麗多彩的網頁內容。但是圖文混排的方式卻給我們存儲數據帶來不便,實際上大多數網頁是把文字和圖片分別存放在不同文件中的,在html源碼中只保存圖片的鏈接地址。
圖文混排的網頁內容
如上圖所示,在做數據采集時,很多朋友把文字和圖片分別下載保存,還要處理鏈接本地化轉換的問題。實際上我們也可以把圖片文件轉碼后保存在html源碼文件里,這樣用一個html文件就可以保存圖文信息了,自動采集圖文步驟如下。
打開木頭瀏覽器項目管理窗口,創建【打開網頁】步驟,添加需要采集的頁面網址,如果添加多個網址,則可以按順序打開采集內容。
打開網址
然后添加最關鍵的步驟【抓取內容】,【添加】抓取內容,在彈出的【抓取元素設置】窗口,點擊【自動獲取】按鈕,瀏覽器將處于元素定位模式,鼠標移到需要抓取的元素內容上方點擊右鍵,在彈出的快捷菜單中選擇【獲取元素并返回】,成功獲取可唯一標識該元素的方法,如下圖所示,此以頁面使用元素的ID屬性定位等抓取的元素區域,設置獲取元素的【TagTextToHtml】擴展屬性,意思是把元素內容轉化為Html代碼。如有必要,可以使用同樣的方法繼續添加抓取頁面文章標題,此處不再贅述。
獲取采集范圍元素
抓取元素轉換成html后,就是保存數據了,創建【保存數據】步驟,勾選【保存變量文件】,選擇Htm文件格式,設置文件保存路徑。
保存采集內容
最后,點擊【開始測試】按鈕運行項目,當項目執行完畢后,打開設定的保存文件目錄,就可以看到自動保存和htm文件,且只有這個文件,雙擊自動調用瀏覽器打開,完整呈現圖文內容。圖片已經轉成了Base64編碼,嵌入保存在htm文件中。
包含圖文的htm文件
*請認真填寫需求信息,我們會在24小時內與您取得聯系。