jQuery中的url()方法主要用于獲取CSS中background-image屬性中的圖片路徑,并轉(zhuǎn)化為相對于網(wǎng)頁根目錄的絕對路徑。它的用法非常簡單,如下所示:
$(selector).css('background-image', 'url(' + imgPath + ')'); var imgUrl = $(selector).css('background-image').replace(/url\((['"])?(.*?)\1\)/gi, '$2');
其中:
$(selector)
表示要修改背景圖片的元素imgPath
表示圖片路徑,可以是相對路徑、絕對路徑或者URL$(selector).css('background-image')
表示獲取當(dāng)前元素的背景圖片路徑replace()
方法用于替換字符串中的內(nèi)容,這里用它來去除CSS中的url()函數(shù)
使用url()方法可以實(shí)現(xiàn)很多有趣的效果,比如給某個(gè)元素的背景圖片增加一個(gè)遮罩,如下所示:
// 添加遮罩層 $(selector).css('background', 'linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url(' + imgPath + ')'); // 前景圖片居中顯示 $(selector).css('background-position', 'center center');
以上代碼中,linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5))
用于創(chuàng)建一個(gè)半透明的黑色遮罩層,center center
用于讓背景圖片居中顯示。