Background-image Определение
Можно ли посредствами JS узнать какой в ксс прописан background-image элемента, при нажатии на него?
У меня есть блок с картинкой(фоновой), поверх нее спан с текстом. Более того все это в таблице... Весь элемент - ссылка. Нужно выцепить оттуда путь картинки и добавить в переменную JS. Для понятности того с чем я имею дело вот так задаются эти блоки: <td valign="top" width="50%" id="bx_2097971167_7950" align="center" class="modern"> <table cellpadding="0" cellspacing="0" border="0" align="center"> <tr> <td valign="top"> <a id="m_ADRIA" href="#" class="items"> <div class="item" style="background-image:url(/upload/iblock/9ce/9ce408c4929f26718a4a791b7eff455c.jpg);"> <div class="descr_cont"> <div class="descr"> <div class="preview_text"> </div> </div> <div class="name"> <h3>ADRIA</h3> </div> <div class="name prices" style="margin-left:190px;"> <h3>Array </h3> </div> </div> </div> </a> </td> </tr> </table> </td> Обращаться к блоку можно через класс .item далее использовать this. Только не знаю как выцепить путь имейджа |
function getStyle = (function(){
return window.getComputedStyle ? getComputedStyle : function(el) {
return el.currentStyle;
};
})();
var uri = getStyle(document.body).backgroundImage;
// дальше регуляркой или хз как.
|
$(function(){
alert( $('td .item').css('background-image') )
})
|
ОлегА, пробовал подобную структуру, только через this, после обращения к классу. Не работает.
$( '.items' ).click(function(){
var this_img = this.css('background-image');
$( '#image' ).css('background', this_img);
return false;
});
|
feniks7, так у вас this не обернут в $() так кончено не будет работать, вот
$( '.items' ).click(function(){
var this_img = $(this).find('.item').css('background-image');
$( '#image' ).css('background', this_img);
return false;
});
|
ОлегА,
Спасибо огромное. Чтото под конец рабочего дня совсем мозги не работают. Сидел с этим кодом без $ уже часа полтора, никак не мог понять что не так... |
| Часовой пояс GMT +3, время: 23:07. |