2017-03-08 181 views
0

我正在嘗試獲取背景圖片網址的值。該URL設置在線直接與風格屬性的元素標籤,像這樣獲取背景圖片的網址值

<a style="background-image: url(https:// ....)"></a>

我試圖做

var url = $(this).css('background-image')

與各種正則表達式,但它似乎並沒有工作。我想存儲這個網址到MongoDB的,但我得到這個錯誤

var styles = parse(el.attribs.style); TypeError: Cannot read property 'attribs' of undefined

+0

你能在你的JavaScript較大片段貼?目前還不清楚你的jQuery代碼片段中有什麼「this」,並且你顯示的錯誤似乎表明你沒有成功選擇該元素。 – dave

+1

'el.attribs.style'應該是'el.attributes.style'或'el.getAttribute(「style」)',但使用'$(el).css('background-image')'是最好的辦法。什麼沒有關於它的工作? – imtheman

+0

我認爲他需要的是一個正則表達式,因此他可以提取'https://theurl.com'而不是保存整個值'url(「https://theurl.com」)'。 –

回答

1

獲取樣式值,然後從中

var bi = $('a').css("background-image"); 
alert(bi.split(/"/)[1]); 

呼叫剝離的URL將jQuery的.css( 「background-image」)總是在雙引號內返回URL,無論原來是如何設置的。

樣品小提琴: https://jsfiddle.net/6qk3ufcb/

+0

如果這對你有幫助,你能否把它標記爲答案? –