2011-08-28 80 views
0

我有我從支架產生的Tasks索引頁一個div。鼠標懸停在切換滑軌

爲了使它更具視覺吸引力,我想隱藏編輯視圖並刪除鏈接,除非在標題上有一個鼠標懸停事件事件。

<% @tasks.each do |task| %> 
    <tr> 
    <td><%= task.name %> - <%= link_to 'Move onto '+task.name+' and start its clock', task_start_path(task) %></td> 
    <td>/ <%= link_to 'Rename task', edit_task_path(task) %></td> 
    <td>/ <%= link_to 'Check its clocks', task %></td> 
    <td>/ <%= link_to 'Destroy task', task, :confirm => 'Are you sure?', :method => :delete %></td> 
    </tr> 
<% end %> 

有沒有乾淨的方式在index.html.erb文件做到這一點還是我需要調用一些自定義的助手JavaScript函數?

我發現Hide a DIV [Rails]但切換上點擊,而不是鼠標懸停。

回答

1

您應該使用在軌道3 Unobtrusive JavaScript你可以把一類特殊的和要隱藏的元素(或鏈接本身)。

喜歡的東西:

<% @tasks.each do |task| %> 
    <tr class="hide_on_hover"> 
    <td><%= task.name %> - <%= link_to 'Move onto '+task.name+' and start its clock', task_start_path(task) %></td> 
    <td class="hideable">/ <%= link_to 'Rename task', edit_task_path(task) %></td> 
    <td>/ <%= link_to 'Check its clocks', task %></td> 
    <td class="hideable">/ <%= link_to 'Destroy task', task, :confirm => 'Are you sure?', :method => :delete %></td> 
    </tr> 
<% end %> 

,然後在你的application.js文件,你會添加JavaScript火上載文件,發現這些元素,並添加懸停動作。如果你使用JQuery(推薦),你可以在這裏看到一個簡單的方法來做到這一點(與例子): http://api.jquery.com/hover/

+0

仍然沒有得到嘗試這個機會,但我會標記爲答案。 – ZMorek