2014-05-04 59 views
0

我最近問了一個question如何將2個圖標更改爲點擊文字。該解決方案工作了一段時間,但現在它不工作。有沒有其他的方法來做到這一點,或者是代碼中的問題?我經常遇到其他腳本的問題。Javascript無法正常工作 - 將圖片更改爲文字點擊

的application.js

//= require jquery 
//= require jquery_ujs 
//= require bootstrap 
//= require jquery.ui.all 
//= require jquery.turbolinks 
//= require jquery_nested_form 
//= require_tree . 

show.html.erb

<div class="thumbsup"> 
<%= link_to image_tag('othericons/thumbsup_off.PNG', height: '20', width: '20', like_post_comment_path(comment.post_id, comment), method: :put, :remote => true %> 
</div> 

<div class="thumbsdown"> 
<%= link_to image_tag('othericons/thumbsdown_off.PNG', height: '20', width: '20', dislike_post_comment_path(comment.post_id, comment), method: :put, :remote => true %> 
</div> 

HTML輸出

<div class="thumbsup"> 
    <a data-method="put" data-remote="true" href="/posts/1/comments/4/like" rel="nofollow"> 
     <img alt="Thumbsup off" height="21" src="/assets/othericons/thumbsup_off.PNG" width="20" /> 
    </a> 
</div> 

<div class="thumbsdown"> 
    <a data-method="put" data-remote="true" href="/posts/1/comments/4/dislike" rel="nofollow"> 
     <img alt="Thumbsdown off" height="21" src="/assets/othericons/thumbsdown_off.PNG" width="20" /> 
    </a> 
</div> 

icons.js

$('.thumbsdown a, .thumbsup a').on('click', function() 
{ 
    $('.thumbsdown').before('You voted') 
    $('.thumbsdown, .thumbsup').remove() 
}) 
+0

你能細說是否有任何錯誤發生?選擇器是否找到了期望的元素?元素是否可能被替換? –

+1

請直接在此問題中顯示相關代碼。 – nnnnnn

+0

我更新了帖子。通過不工作,我的意思是 - 當我點擊其中一個圖標時,它不會更改爲文本。 – Absurdim

回答

0

如果有人工作之前,該問題很可能與Turbolinks一個問題:「不工作」

$(document).on("click", ".thumbsdown a, .thumbsup a", function() { 
    $('.thumbsdown').before('You voted') 
    $('.thumbsdown, .thumbsup').remove() 
}); 
+0

無法正常工作。它會在點擊時將圖像更改爲文字,但會同時更改頁面上的所有評論。 – Absurdim