2013-06-25 4 views
20

私は大のdivがありますRailsリンクでDIVを作成するにはどうすればいいですか?

.limeskin:hover { 
    background: #eee; 
    cursor: pointer; 
    display: block; 
} 

私がクリッカブルになりたいです。私はRailsのリンクがクリック可能持っている必要のRailsを使用していますので:たとえば

<%= link_to 'Edit Your Email Address', edit_user_path %> 

私はこれに苦労しています。

<% @user.posts.each do |post| %> 
    <div class="lists"> 
     <ol class="limeposts"> 
     <li> 
     <div class="limeskin"> 
      <div class="limebox"> 
      <div class="limecost"> 
       <b>Price:</b> 
       <%= number_to_currency(post.price, :unit => "R") %><br> 
       [...] 
<% end %> 

どれシンプルな法的実行可能な答え:

ここで全体のブロックは何ですか?

おかげ

答えて

47

link_toは、ブロックを受け入れることができます。

<%= link_to root_path do %> 
    <div>Hey!</div> 
<% end %> 

これは<a>タグとdiv要素を包囲します。

ドキュメント:http://apidock.com/rails/ActionView/Helpers/UrlHelper/link_to

それとも、大きなdiv要素を持っているとjQueryを使用して、それが "クリック可能" にしたい場合:

# html.erb 
<div class="limeskin"> 
    <div class="limebox"> 
    <div class="limecost"> 
     <b>Price:</b> 
     <%= number_to_currency(post.price, :unit => "R") %><br> 
     #[...] 
    </div> 
    </div> 
</div> 

# jQuery.js 
$('.limeskin').click(function(event) { 
    var clicked_div = $(this); 
    # do stuff with the event object and 'this' which 
    # represent the element you just clicked on 
}); 

jsFiddle:http://jsfiddle.net/Lxw34w5o/1/

+0

こんにちはおかげで、それはlimefaceとlimcostのdivコンテンツのクリック可能になりませんが、何も。私はリムスキーをクリック可能にするブロック全体(スタイルシートが追加されているのを見てください)を望みます。 –

+0

私は秒を与えますjQueryで解決策を投稿します – MrYoshiji

+0

ただ答えを更新しました@ErinWalker – MrYoshiji

1

使用するJavaScript(私はjQueryのをお勧めします)を使用してアクションを実際に実行し、CSS hoverセレクタを使用してdiv背景とカーソルを変更します(カーソルを矢印から手に変更する)。それはそれはだビューアを示しているため

<%= link_to desired_path do %> 
    <div class="linkable"> 
     <another div> 
      ... some other tags 
     </another div> 
    </div> 
<% end %> 

と私はあなたがイベントの上にマウスのために異なる背景色を使用することをお勧めします:あなたは、複数のタグを含む大きなブロックを持っている場合でも、十分であろう以下のようにLINK_TOを使用して

1

リンク!あなたの.cssファイルで

.linkable:hover{ 
    background-color: red; 

} 
+0

これを私のindex.html.erbファイルで実行すると、実際には行は全く表示されません。何が起こるか知っていますか? –

+0

@AbbeyJacksonコードをチェックし、<%= not <% –

+0

を使用してください。はい、ここから直接コピーしてください。 –

関連する問題