2015-07-09 3 views

ответ

0

Используйте это вместо

'.css ("фоновое изображение")'

+0

все еще не смог найти точный идентификатор img. –

0

Попробуйте это ...

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

, если вам нужно получить свой URL-адрес фонового изображения, поделитесь своими фрагментами кода html. –

+0

https://jsfiddle.net/hss2uszz/ –

1

Попробуйте

var $div = $('#mydiv'), 
 
    bimg = $div.css('background-image'); 
 
var match = bimg.match(/\d+-bg/), 
 
    value = match ? match[0] : undefined; 
 

 
snippet.log(value)
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 --> 
 
<!-- To show result in the dom instead of console, only to be used in the snippet not in production --> 
 
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script> 
 

 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div id="mydiv" style="background-image: url(http://example.com/img/123456-bg.jpg); background-size: cover;"></div>

0

Это должно работать:

var imageName = $('#yourDiv').css('background-image').match(/img\/(.*)\.jpg/)[1]; 
1

Более или менее, как это: http://jsfiddle.net/stdob/52ok19gr/3/

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); 
+0

Почему бы не прямо 'm.filename'? Я использую Chrome, и в объекте URL есть атрибут filename, почему подстроить его из пути –

+0

Если я правильно понимаю TS, ему нужно получить базовое имя? –

+0

Я согласен с вами, спасибо, что поделились этим –

Смежные вопросы