0

起動しようとしている単純なホームページのスライダーがあります。flexslider と他のいくつかのスライダー JavaScript スクリプトで試してみました。奇妙なのは、最初のページの読み込みでうまく読み込まれ、ハード リフレッシュを行うと、それがうまく読み込まれることです。どちらの場合も、期待どおりにロードされます。ただし、スライダーを使用してページから離れた場所をクリックしてからページに戻った場合 (ハード更新を行わずに)、スライダーはまったく表示されません。

私は新しいレール 4.0.0 アプリを使用しています。

flexslider とその他のスライダーの jquery コードを vender/assets/javascript ディレクトリに配置しました。次に、 app/assets/javascript/pages.js.coffee ページに次のものがあります。

$(document).ready ->
  $(".flexslider").flexslider animation: "slide"

また、次のように変更しました。

$(window).load ->
  $(".flexslider").flexslider animation: "slide"

としても:

$ ->
  $(".flexslider").flexslider animation: "slide"

しかし、すべて同じ問題が発生します。

私が見逃している可能性のあるものはありますか?

4

1 に答える 1

4

問題は、すべてではなく一部またはページのみをロードするターボリンクの宝石があるためだと思います。そのため、document.readyイベントは機能しません。これを試すことができます:

$(window).bind 'page:change', ->
  $(".flexslider").flexslider animation: "slide"
于 2013-06-28T18:11:14.403 に答える