2014-10-03 63 views
0

我試圖選擇我徘徊在一張桌子裏面的元素,以改變它的屬性。我與孩子的方法嘗試,就像這樣:選擇一個特定的孩子我徘徊

<table class="tablemain" position="absolute"> 
<tr height="100%"> 
<td class="about"></td> 
<td class="project"></td>   
<td class="blog"></td> 
<td class="contact"></td> 
</tr> 
</table> 

和腳本是:

function() { 
$('.tablemain').children(this).hover(function(){ 
$(this).addClass('selected'); 
}); 
}; 
+0

爲什麼不'$( 'tablemain TD')'? – j08691 2014-10-03 15:11:29

回答

0

的幾個問題。

  • hover具有兩個功能是任何實際用途。一個在進入時調用,另一個在離開元素時調用。一個函數只在進入時被調用。
  • 表中的子女是theadtbody,即使不在原始HTML中。當瀏覽器添加完成 DOM時。我以爲你想瞄準TD?新選擇器選擇class="tablemain"元素下的任何TD
  • 我把它刪除所選class當你退出項目(刪除第二個功能,如果你不希望出現這種情況)
  • 你有包裹在一個匿名函數這是從來沒有所謂你的代碼。我更換了一個快捷DOM就緒處理程序($(function(){YOUR CODE});是短期的$(document).ready(function(){YOUR CODE});

的jsfiddle:http://jsfiddle.net/TrueBlueAussie/ynhujf6v/1/

$(function() { 
    $('.tablemain td').hover(function() { 
     $(this).addClass('selected'); 
    }, function() { 
     $(this).removeClass('selected'); 
    }); 
}); 
+0

'.hover()'只能使用一個函數。 – j08691 2014-10-03 15:16:18

+0

@ j08691:按照編輯:) – 2014-10-03 15:16:33