繁体   English   中英

如何建立喜欢按钮?

[英]How do I build a like button?

很抱歉,如果这个问题很基本,很遗憾,除了JS和前端开发方面的经验之外,我什么都没有。 我要完成的工作是构建一个非常简单的like按钮(ala facebook),按下该按钮后会发生变化,因此,如果我单击按钮就像按钮转变为“不喜欢”一样,如果我单击不喜欢,按钮就会转变为“喜欢”。 我正在使用Rails(4.0)和JQuery。

我现在所拥有的是一个可以在后端正常工作的按钮,但是在前端却无法正常工作,即它无法正确地从“喜欢”变为“不喜欢”或从“不喜欢”变为“喜欢”。

这是包含两个按钮的部分:

<div class="like-button">
  <% if current_user && current_user.liked?( object ) %>
    <%= link_to unlike_path( object ), method: :delete, remote: true, id: "like_button-#{ object.id }", class: 'like-button' do %>
      <span class="icon"></span>
      <span class="label m3">Non mi Piace</span>
    <% end %>
  <% else %>
    <%= link_to like_path( object ), method: :post, remote: true, id: "like_button-#{ object.id }", class: 'like-button' do %>
      <span class="icon"></span>
      <span class="label m3">Mi Piace</span>
    <% end %>
  <% end %>
</div>

一切正常,我知道这是因为,如果我重新加载页面并显示正确的按钮,它将正确检查按钮的状态。 不幸的是,我对JS不太确定(也是因为到目前为止,我对前端问题的了解很少...):

$(".like-button").on("click", function () {
  $("#like_button_container").html("<%= render partial: 'shared/like', locals: { object: @likable } %>");
} );

我究竟做错了什么? 我试图将包含整个内容的div的类更改为id like_button_container,但它仍然无法正常工作。

有人可以照亮吗?

TIA

您可以使用jQuery来实现。

这是HTML

<input type="button" class="like"  value="like">

<input type="button" class="unlike" style="display:none;" value="unlike">


<script>
$(function(){
$(".like").click(function(){

  $(this).hide()
$(".unlike").show()


});
$(".unlike").click(function(){

  $(this).hide()
$(".like").show()
//you can keep you logic here 
//you can make server side increment of the likes/unlike using jquery ajax post or
//any login you want to put

})

});

</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM