私はGiggleTrigger.comをRails 3.1にアップグレードしています。このサイトでは、ユーザーがパンチライン(オレンジ色のフラッシュ)に投票すると、クールなハイライト効果があります。アカウントを作成すると、自分で試すことができます。Rails 3.1にアップグレードされ、ハイライト効果が働かない
とにかく、私がRails 3.1にアップグレードしたときに、ハイライトエフェクトが機能しなくなりました。 (4行目で投票:へpunchline_id変更):私はに変更
class VotesController < ApplicationController
def create
@punchline = Punchline.find(params[:punchline_id])
@vote = @punchline.votes.build params[:punchline_id]
@vote.user = current_user
respond_to do |format|
if @vote.save
format.js
format.html { redirect_to @punchline }
else
format.html { redirect_to root }
end
end
end
:ここ
は(私はマイナー以下に記載された変更を、作られた)私のオリジナルVotesControllerです class VotesController < ApplicationController
def create
@punchline = Punchline.find(params[:punchline_id])
@vote = @punchline.votes.build params[:vote]
@vote.user = current_user
respond_to do |format|
if @vote.save
format.js
format.html { redirect_to @punchline }
else
format.html { redirect_to root }
end
end
end
ビューは次のようになります。
<span id="vote_total_<%= punchline.id %>" class="punchline_votes">
<%= punchline.votes.size %>
</span>
<span id="vote_button">
<%= button_to 'giggle', punchline_votes_path(:punchline_id => punchline),
:remote => true %>
</span>
これは、Ajax(create.js.rjsとしてビュー/投票ファイルに配置)である:私は変更されるまで(「クスクス」と呼ばれる)の投票ボタンが投票を作成していなかった
page.replace_html "vote_total_#{@punchline.id}", "#{@punchline.votes.size}"
page["vote_total_#{@punchline.id}"].effect :highlight,
:color => "#f7931e",
:endcolor => "#e6e6e6"
: punchline_idに:vote。しかし、それでも私はフラッシュ効果を与えていません。私の考えは、おそらく私は何とかこのジャバスクリプトを資産パイプラインに入れる必要があるということです。どんな指導も高く評価されます。ありがとう。
右。私がアップグレードしたとき、私はJrailsを削除しました。シュート。 – thatdankent
jQueryでそれを行う方法についてのアイデアはありますか? – Shobhit
あなたは自分の.highlight()fnをロールバックするか、jQueryUIのハイライトを使用する必要があります:http://docs.jquery.com/UI/Effects/Highlight#option-color – grumpit