0

私は理解できない奇妙な問題を抱えています。私はモーダルイメージギャラリーを作って、リンクに直接行くとすべてがうまくいきます。つまり、ブラウザのバーにhttp://localhost:3000/galleryと入力してEnterを押します。navbarからサブページに行くときにモーダルギャラリーが機能しませんが、直接URLに行くときに機能します

ギャラリーはうまくいきますが、ナビゲーションバーのギャラリーリンクをクリックしてホームページからギャラリーに移動すると、モーダルのスニペットが何らかの理由で読み込まれないなど、完全に機能しません。 ファイルはアップロードされません。何も表示されないように、サーバー上の静的なイメージだけが表示されます。

ここで私はこれを間違えたのですか?私はこのチュートリアル/ jqueryのプラグインを追ってきた

それを行うには:

静的ページのgallery.html:ここ

https://github.com/michaelsoriano/bootstrap-photo-gallery


は私が推測する最も重要な部分です。語:

<% provide(:title, "Gallery") %> 
<h1>Gallery</h1> 
<div class="container photos"> 
    <ul class="first"> 
     <% @photos.each do |photo|%> 
     <li> 
      <img src="<%= image_path(photo) %>" style="max-height: 150px !important; min-height: 150px;"> 
     </li> 
     <% end %> 
    </ul> 
</div> 

ここ

は私が内部に置かれているコードの一部は、それがモーダルが機能するために責任があるapplication.jsです:ここでは

$(document).ready(function(){ 
    $('ul.first').bsPhotoGallery({ 
    "classes" : "col-lg-2 col-md-4 col-sm-3 col-xs-4 col-xxs-12", 
    "hasModal" : true 
    }); 
}); 

は、私は私のヘッダーナビゲーションバーに配置したギャラリーへのリンクです:

<li><%= link_to "Gallery", gallery_path %></li> 

そしてroutes.rbをして私が唯一配置した:私はjsのコードは、おそらくワットにそれをどこか別の場所に置く/何とか操作する必要があることを感知し

get 'gallery' => 'static_pages#gallery' 

をリンクに直接行くとき、またはホームページからギャラリーにナビゲートするときは、両方ともorkを選んでください。しかし、私は手がかりから外れているのか、なぜそれが起こっているのか?

詳細が必要な場合は、私にお知らせください。

答えて

0

申し訳ありませんが、私は解決策を見つけたように見えますが、これが正しい方法であるかどうかはわかりませんが、うまくいきます!

だから私は何をしたか、これにはJavaScript一部を変更することでした:

jQuery(document).on('ready page:load', function() { 
    $('ul.first').bsPhotoGallery({ 
    "classes" : "col-lg-2 col-md-4 col-sm-3 col-xs-4 col-xxs-12", 
    "hasModal" : true 
    }); 
}); 

そして今、それはURLを直接アクセスする際に、両方の作品、または他のページから移動するとき:)

Iこれはいつか誰かに役立つことを願っています!

関連する問題