2014-10-01 3 views
0

Я пытаюсь добавить фоновое изображение CSS с помощью jQuery, но не могу понять, как это сделать. Я думаю, я в правильном направлении, но я не уверен ...jQuery - Изменить фоновое изображение с переменной?

var bgImg = "http://www.domain.com/my-image.jpg"; 

$('#myBanner').css("background", "url("+bgImg+");"); 

Вот скрипку из него не работает: http://jsfiddle.net/qLqvtkp3/

Любая помощь будет здорово !!

+4

Снимите ',' в строке –

+0

^^ это. Все остальные ответы являются излишними и не выделяют актуальную проблему. – Archer

+0

Отлично! Спасибо! – Nick

ответ

5

Вы должны удалить ; в строке. он делает правило недействительным, а jQuery не добавляет недопустимое правило в атрибуте style.

$('#myBanner').css("background", "url("+bgImg+")"); 

http://jsfiddle.net/qLqvtkp3/17/

+0

+1, Хорошее пятнистое, я думал, что с css-цветом и т. Д., OP хотел фоновое изображение, тогда это должно быть фоновое изображение. – SSA

+0

@SSA это зависит, он может переопределить все свойство фона. Другими словами, не нужен розовый фон. –

+1

Точно, я думал, что это иначе, чем вы. Вы уже получили +1 от меня для определения «;». – SSA

3

Это будет делать:

$('#myBanner').css({ 
       "background-image": "url('" + bgImg + "')" 
}); 

Fiddle

3

Заменить background с background-image

$('#myBanner').css("background-image","url('"+bgImg+"')"); 
+0

@ Karl-AndréGagnon поблагодарить u i обновлено. – PSR

+0

Спасибо за редактирование – PSR

1

Проблемы в коде: -

1) -Вы имеете объединили ваши строки в неправильном направлении.

2) -Вы использовали фон. Вы должны использовать background-image.

3) -Вы написали ; в коде CSS JQuery ("url("+bgImg+");"))

Попробуйте это: -

var bgImg = "http://www.domain.com/my-image.jpg"; 

$('#myBanner').css({"background-image":"url('"+bgImg+"')"}); 
+0

Не сработает, это не основная проблема. –

+0

cummon .. то, что должно быть решением .. вы скажете @ Karl-AndréGagnon –

+0

Смотрите мой комментарий к вопросу! –

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