2010-11-01 60 views
0

我現在有這個權利:jQuery的:焦點節目delbutton

 <td id="delPMicon" style="padding-right:4px;padding:4px;"> 
          ...Removebutton.... 
         </td> 

這是每一個<tr>(行數據庫吐盡了,而()在PHP中使用)內的刪除按鈕。

所有<tr>此刻都有一個id #pm。

我想當你用你的鼠標聚焦鼠標時,在<tr>上出現#delPMicon,然後離開onblur。

我已經試過這樣:

added css property to #delPMicon: display:none; and then: 
$('#pm').focus(function() { 
    $('#delPMicon').show(); 
}); 

這是不行的,不知道我做錯了什麼。

我也知道id只能使用一次,所以#pm焦點只能在一個<tr>上工作(如果它工作正常),我該如何解決這個問題?我不能使用類到<tr>,因爲即時通訊使用其他功能。我能做什麼(我能想到的)是將該行的id添加到#pm,所以它會是:#pm22,但是那麼我怎麼能告訴JS它應該看什麼ID呢?

也許我可以在這個.focus功能在while循環,以獲得ID添加到每個TR,所以我可以這樣做:

$('#pm<?php echo $id; ?>').focus(function() { 

回答

1

試試這個

$('.pm').hover(function() { 
    function() { $(this).find('.delPMicon').show(); }, 
    function() { $(this).find('.delPMicon').hide(); } 
}); 

你可以對於當前具有相同ID的所有元素使用相同的類。然後使用'this'引用將事件處理程序分別附加到每個處理程序。

+0

我使用的名稱=代替,但接受懸停(); – Johnson 2010-11-01 18:50:20

+1

懸停的參數不應該是:hover(function(){...},function(){...});第一個參數是當鼠標進入選擇器區域時發生的情況,第二個參數是當鼠標離開選擇器時發生的情況。 – tinifni 2010-11-01 19:31:30

+0

謝謝tinifni。 – 2010-11-01 19:38:30

0

只需使用CSS

tr > td#delPMIcon { display: none; } 
tr:hover > td#delPMIcon { display: table-cell; }