と画像の変更ソースは、私は私のアプリケーションは、Ruby on Railsに上に構築されたときにユーザーがスクロールRuby on Railsには、JavaScript
$(window).scroll(function() {
if ($(document).scrollTop() > 0) {
switchToStatic();
}
else {
switchToAnimated();
}
}
function switchToAnimated() {
if ($(window).width() > 768) {
$('body').css('padding-top', '0');
$('#logo').attr('src', '../assets/blue_logo.png')
$('#logo').css('width', '15vw');
$('.navbar').css("background-color", 'transparent');
}
}
function switchToStatic() {
$('body').css('padding-top', '50px');
$('#logo').attr('src', '../assets/white_logo.png')
$('#logo').css('width', '7.5vw');
$('.navbar').css("background-color", '#3B98F2');
}
ダウン私のWebページ上のイメージの1つを変更するJavaScript関数を持っています。スリムなマークアップは私のローカルホスト上でこの
a href="http://www.thisisarealsite.com"
= image_tag("white_logo.png", alt: "logo", id: "logo")
のように見えるの機能が正常に動作しますが、我々は生産にサイトを起動したときにファイルが欠落しています。レールがすべてを共通のディレクトリに吸い取っていることはわかっていますが、ローカルホストとプロダクションの両方でイメージが動作するようにイメージを修正する方法はわかりません。私は '../assets/'参照を取り除き、ファイルを指してみましたが、localhostまたはproductionのどちらでも動作しませんでした。
私はこの答えが気に入っていますが、問題はブラウザーが二重引用符で平易なHTMLにレンダリングして、不一致となり、構文エラーがスローされることです。 –
実際には、私はそれを一重引用符で二重引用符を切り替えることによってレンダリングしました。残念ながら、srcはイメージタグに設定されています。私はattr以外の別の方法を使用する必要があります –
ちょっと@NickGilbert私は私の答えを更新しました。 'image_tag'の代わりに' asset_path'ヘルパーを呼び出す必要があります。プレーンなURLが生成されます。 –