(define -ayalog '())

括弧に魅せられて道を外した名前のないプログラマ

Rails4でキャッシュが効いてしまって、304 not modified.が返ってきてしまうとき

やろうとしていることがそもそもRailsの書き方として間違っている気がしないでもないんだけど、ページを読み込んだ後にjQueryでコンテンツを表示したり隠そうとしたときにコンテンツが変更されていない場合キャッシュされてしまって、304 not modified.が返ってきてしまいjQueryのreadyが処理されないことがある。

それで困ったので、ググったら解決した。

$ ->
  #CoffeeScript code

と普段書くところを

$(document).on 'page:change', ->
  #CoffeeScript code

と書きなおすだけでok。

on関数についてはAPI参照ってことで。
.on() | jQuery API Documentation

どうでもいいけど、jQueryのevents一覧みたいなのないのかなー。いまいち何がイベントにあるのか理解して出来ないでいる。