問題タブ [turbolinks]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
8 に答える
9066 参照

ruby-on-rails - Rails 4 ターボリンクと Google アナリティクス

Rails 4 で Google アナリティクス トラッキング コードとターボ リンクを実装する最善の方法を考えています。通常のスニペットは機能しますか? このための宝石も見ましたが、それが何をするのかわかりません。

0 投票する
5 に答える
5485 参照

ruby-on-rails - jQuery を Turbolinks で動作させる

を使用するRails 4アプリがありますTurbolinks。私の理解では、TurbolinksTurbolinks は新しいページをロードせず、新しい要素のみを取得するため、jQuery コードが壊れます。

したがって、新しいページに移動しても がトリガーされない場合がありますが、.ready常に がトリガー.page:loadされるため、新しい jQuery コードは初期化されません。

jQuery コードがたくさんあるので、Turbolinks と互換性があるように jQuery コードを変更したくありません。

.readyイベントを上書きして含めるように、私のapplication.jsにjavascriptコードを追加することは可能page:loadですか? どうすればいいですか?

0 投票する
4 に答える
3703 参照

ruby-on-rails - Turbolinks はバインディングを乗算します

ブラウザで戻る/進むボタンを使用すると、Turbolinks がイベントを複数回バインドするという問題があります。document.on() イベントを書いている方法ではないことを確認するための簡単なスクリプトがあるので...

リンクをクリックすると 1 回起動します。前後 (または別の Turbolink リンク) をクリックすると、2 回起動します。次回は何度も発火し、成長し続けます。これは、jQuery と Turbolinks 以外のマニフェスト ファイルにある唯一のものです。ターボリンクがイベント バインディングを複製しないようにするにはどうすればよいですか?

0 投票する
0 に答える
124 参照

ruby-on-rails - 間違ったアセットがロードされ、アプリケーションのレイアウトをレンダリングする

私は資産に関して一種の奇妙な問題を抱えています。この方法でコントローラー固有のアセットを含めようとしているapplication.html.erbで

application.jsは次のようになります。

Generalフォルダーには、いくつかの一般的な JS ファイルが含まれています。アプリケーションは 2 つのコントローラーを使用します:IndexおよびProfiles(ルート ルートは "index#index")。ある時点で、Rails は間違った方法でアセットをロードし始めます: インデックス ページprofiles.jsがロードされindex.js、/profiles/new にロードされます。この問題は、navbarを押しindexたりリンクしたりした場合にのみ発生します。create profileこのページを別々のタブで開いたり、Ctrl+を使用してページをリロードしたりすることに問題はないようRです。それで、ターボリンクの問題だと思いますか?

0 投票する
1 に答える
141 参照

javascript - リンクをクリックして新しいページをロードするたびに、追加のアセットのロードを停止するにはどうすればよいですか?

プロジェクトのリンクをクリックすると、アセットの追加パッケージが取得されます。クリックごとに +1 アセットの追加パッケージが得られます。10 回のクリック = アセットの 10 個のコピー。(10 個の画像、10 個の css ファイル、1 個の代わりに 10 個の js ファイル)。私のjqueryイベントはすべて10回トリガーされました。どこで解決策を探すべきかさえわかりません。どんな助けにも感謝します。

私のapp.js

============

いくつかの実験(プロジェクトからすべてのjsを削除しました)の後、問題はレールキャッシングにあるようです。クリックするたびに、ブラウザーがアセットの新しいパッケージをダウンロードするように強制されるためです。

============

私の問題はターボリンクの宝石にあることがわかりました。毎回アセットをキャッシュしてから、アセットの新しいパッケージをダウンロードします。しかし、どうすればこれを修正できますか?

0 投票する
2 に答える
1880 参照

javascript - Rails 4 で Javascript が表示されない (ハイチャート)

単純な Rails アプリケーションに Highcharts を含めましたが、問題なく動作します。しかし、より複雑なRailsアプリケーションで同じことをJavascriptコードで行ったとき、チャートは表示されません。

これが私がこれまでにしたことです:

Gemfile

アプリケーション.js

show.html.erb

私が何を間違えたのか誰か知っていますか?Googleは、ターボリンクと関係があるかもしれないと言っていますが、他のアプリケーションでも機能しません...

そして、簡単な 2 番目の質問です。このコードを channel.js.coffee に追加して、このページに js がないようにするにはどうすればよいですか? 前もって感謝します!

0 投票する
3 に答える
1452 参照

ruby-on-rails - Rails レイアウトの動的レンダリング

最も基本的なレベルで、左側と右側のパネルの 2 つのパネルで構成される Ruby on Rails アプリケーションがあります。私が望むのは、これをレイアウトとして使用し、コントローラーで のようにレンダリングできるようにすることrender <view_name>, <right or left panel>です。これにより、ターボリンクと組み合わせて、左側または右側のパネルのみが動的に作成されます。

インターネットを検索しましたが、私のような例は見つかりませんでした。これは実行可能だと確信していますが、どうすればよいですか?
編集: Android の chrome で実行できるはずです。1 つの解決策は、最初のリクエストですべてのビューをレンダリングすることです。リンクをクリックすると、パネルが非表示になり、表示されますが、これは問題ないと思います。ご意見はありますか? ここに画像の説明を入力

0 投票する
1 に答える
373 参照

javascript - Railsターボリンクonerror javascript

画像のリンクが切れている(404が見つからない)場合に画像を非表示にしたい。イメージでトリガーするonerror:hideImage(this)と、一度動作し、次にターボリンクのために、更新後にすべてのイメージが非表示になります。解決策はありますか?

ありがとう

0 投票する
1 に答える
460 参照

ruby-on-rails-4 - スクリプトはロードされていますが、実行されていません (Turbo リンク)

私はこのスクリプトを持っています:

$(document).ready(ready) $(document).on('page:load',ready)

ウェブサイトに Facebook バッジを作成するためのものです。ただし、関数を作成して にready関数をロードしたにもかかわらずpage:load、facebook バッジはページが更新されたときにのみ表示されます。これは、適切に構成されていないターボリンク プロジェクトに期待される古典的な動作です。他に何をすべきか本当にわかりません。

スクリプトはクロムのアセットとしてロードされていますが、他のすべての後にロードする必要があります。このオンライン コンバーターを使用して既存のスクリプトを変換しました。これはコーヒー スクリプトとして機能しますが、更新後にのみ機能します。

アップデート

ここが気になるところです。5行目にconsole.log見えますか?これは、新しいページのロード時に初めてコンソールに正常に記録されますが、何が起こっているのでしょうか?

0 投票する
1 に答える
529 参照

ruby-on-rails - レールターボリンクとのこの統合を追加

addthis (smartlayers) js を Rails 4 アプリケーションに統合しようとしています

コードを 2 つのページに追加しました (例: テンプレートの表示、テンプレートの編集)。

リンクを使用してあるページから別のページに移動すると、アイコンが機能していない

ページを更新すると、アイコンが表示されます。グーグルで調べたところ、ページがターボリンクを使用してナビゲートしていることがレールでわかりました。

私はこれから解決策を試しましたが、解決できません。

ここに私の編集テンプレートがあります

そして私の番組テンプレート