У меня есть небольшая функция jQuery, где я могу сменить фоновое изображение на div.jQuery change background image - Котировочные знаки
HTML + JQuery
<div id="mydiv"></div>
<a onclick="chooseBackground('foo.jpg')">Foo!</a>
<script>
function chooseBackground(file) {
var file = '/path/to/'+file;
$('#mydiv').css('background-image','url('+file+')');
}
</script>
В результате этого в Chrome инспектора является:
<div id="mydiv" style="background-image: url("/path/to/foo.jpg");"></div>
Я также попытался это:
$("#mydiv").css("background-image","url('"+file+"')");
Знаки кавычек там вместо апострофных знаков, которые должны обернуть URL.
Результат такой же на сценариях стендов. Есть идеи? Мне что-то не хватает?
[Редактировать] Почему это проблема
У меня есть еще один сценарий, который просматривает весь DIV. Сценарий копирует весь контент в div (включая фоновое изображение) и показывает его в полноэкранном режиме. Как это:
<script>
function preview() {
var background = $('#mydiv').css('background-image');
var content = 'foo bar abc 123';
$('#previewdiv').html('<div style="background-image:'+background+';">'+content+'</div>';
}
<script>
Результат в HTML является:
<div style="background-image: url(" http:="" mydomain.com="" path="" to="" foo.jpg");">
Привет! Сожалею. Отредактировал вопрос. Я написал здесь неправильно на Stackoverflow – Stichy
Код, который вы предоставили, работает как ожидалось: http://jsfiddle.net/mx3tv69m/. В чем проблема с котировками в HTML? –
@RoryMcCrossan: Результат в инспекторе тот же:
. Это чудовищный инспектор Chrome? – Stichy