2

これで、ユーザーをフォローまたはフォロー解除できるボタンができました。
ターゲットユーザーがすでにフォローされている場合。このように表示されます。

フォロー解除

すると対象ユーザーはフォローされず、このように表示されます。

従う

対象のユーザーが既にフォローされている場合に「フォロー中」と表示されるようにしたいです。
次に、マウスカーソルをボタンの上に置くと、表示が「フォロー解除」に変更されます。

ブートストラップでそれを行うにはどうすればよいですか?

見る

<% if user_signed_in? %>
    <% unless user == current_user %>
      <% if current_user.following?(user) %>
        <%= link_to(unfollow_user_path(user), :remote => true, :class => 'btn') do %>
       <i class="icon-remove"></i>
       Un-Follow
     <% end %>
      <% else %>
        <%= link_to(follow_user_path(user) ,:remote => true, :class => 'btn btn-primary') do %>
        <i class="icon-ok icon-white"></i>
        Follow
        <%end%>
      <% end %>
    <% end %>
<% else %>
        <%= link_to(new_user_session_path , :class => 'btn btn-primary') do %>
        <i class="icon-ok icon-white"></i>
        Follow
        <%end%>
<% end %>

HTML

<a href="/user/1/follow" class="btn btn-primary" data-remote="true">
    <i class="icon-ok icon-white"></i>
    Follow
</a>

<a href="/user/1/unfollow" class="btn btn-primary" data-remote="true">
    <i class="icon-remove icon-white"></i>
    Un-Follow
</a>

アップデート:

<a href="/user/1/unfollow" class="btn" data-remote="true" onhover="someFunction()">
    <i id="Following" class="icon-remove"></i>
    Following
</a>
4

1 に答える 1

1

onHover イベントの使用 jQuery を使用して、テキストを変更したいボタンの "class" 属性を変更することもできます。

すなわち

<a href="/user/1/follow"  onHover="someFunction();" class="btn btn-primary" data-remote="true">
    <i id="Following" class="icon-ok icon-white"></i>
    Following
</a>


someFunction() {
  $('i#Following').attr("class", "icon-ok icon-white").innerText("Unfollow");
}

うまくいけば、あなたは写真を手に入れます。

編集:これは、マウスオーバー時にsomeFunctionのコードを起動する完全なコードです。

<html>

<head>
<script type="text/javascript">

function someFunction()
{
 alert("Hello");
}
</script>
</head>

<body>
<a href="/user/1/unfollow" class="btn" data-remote="true" onmouseover="someFunction();return true;" >
    <i  id="Following" class="icon-remove"></i>
    Following
</a>
</body>

</html>
于 2013-01-17T14:53:55.270 に答える