Встроенное фоновое изображение Chrome потеряно на кнопке «Назад» в Chrome

У меня есть встроенный стиль элемента в одном из моих шаблонов.

- hero_image = article.hero.url(:medium) if article.hero.url

%article{style: "background-image: url('#{hero_image}');background-attachment : fixed;"}

Это работает чудесно для меня. За исключением случаев, когда я перехожу по другой ссылке и использую кнопку «Назад», чтобы вернуться на страницу.

Когда я использую кнопку «Назад», чтобы вернуться на страницу, инспектор источника точно такой же, но без изображения. Когда я обновляю страницу, тот же код, но изображение есть. Серьезно странно и раздражает.

Я видел сообщения об ошибке в Chrome, связанной с background-attachment:fixed; но обходные пути, которые они предлагают, не работают.

Есть ли способ принудительно (через Turbolinks?) обновить этот элемент?


person Dennis Best    schedule 29.01.2014    source источник


Ответы (2)


Оказывается, проблема решается добавлением базового URL-адреса к URL-адресу следующим образом:

- hero_image =  base_url + article.hero.url(:medium) if article.hero.url

%article{style: "background-image: url('#{hero_image}');background-attachment : fixed;"}

(Благодаря этому я добавил помощник base_url: https://stackoverflow.com/a/2952576/1291663)

person Dennis Best    schedule 29.01.2014
comment
Это помогло мне. У меня были такие же проблемы. Отличный ответ @ Деннис - person Justin; 09.02.2014

Я столкнулся с той же проблемой в своем приложении, пытаясь отобразить аватары пользователей.

Есть (много) отчетов об ошибках, связанных с этой конкретной ситуацией, датированных пару лет назад, но ошибка все еще присутствует на момент написания этой статьи.

Решение, которое я выбрал, состоит в том, чтобы заменить фон фактическим тегом img, а затем использовать трюки z-index, чтобы отодвинуть его.

person Marko Kacanski    schedule 26.03.2014