Javascript 使用attr()获取背景图像url

Javascript 使用attr()获取背景图像url,javascript,jquery,Javascript,Jquery,我使用attr(‘style’)并能够获得下面的值 background-image: url(http://example.com/img/123456-bg.jpg); background-size: cover; 但如何继续获得 123456-bg 用这个代替 “.css(“背景图像”)”试试这个 var index = yourUrl.lastIndexOf("/") + 1; var img = yourUrl.substr(index); var imgName = img.s

我使用attr(‘style’)并能够获得下面的值

background-image: url(http://example.com/img/123456-bg.jpg); background-size: cover;
但如何继续获得

123456-bg
用这个代替

“.css(“背景图像”)”

试试这个

var index = yourUrl.lastIndexOf("/") + 1;
var img = yourUrl.substr(index);
var imgName = img.substr(0, img.indexOf('.'));
alert(imgName);
试一试

var$div=$('#mydiv'),
bimg=$div.css('background-image');
var match=bimg.match(/\d+-bg/),
值=匹配?匹配[0]:未定义;
snippet.log(值)

这应该可以:

var imageName = $('#yourDiv').css('background-image').match(/img\/(.*)\.jpg/)[1];
大致是这样的:


css(element)呢?这能回答你的问题吗?仍然找不到确切的img id。如果需要获取背景图像的URL,请共享html代码片段。为什么不直接
m.filename
?我正在使用Chrome,URL对象中有filename属性,为什么要从pathname中将其子串如果我理解正确,他需要获取基本名称?URL没有
filename
属性:
var url = $("#div").css('background-image');

var m = new URL(url.match(/url\((.*)\)/).pop());

m.filename = (m.pathname).substring( (m.pathname).lastIndexOf('/')+1 );

m.basename = m.filename.match(/(.*)\.(.*)/)[1];

console.log(m);