2014-04-17 39 views
1

我開發一個Web應用程序,在那裏我有一個表中的HTML表...jQuery的點擊文本

<table class="alphabet"> 
    <tr> 
      <td>a</td> 
      <td>b</td> 
      <td>c</td> 
    </tr> 
</table> 

我需要改變文字顏色,當我將鼠標懸停在每一封信,我有下面的代碼工作正常:

$(document).ready(function() { 
    $(".alphabet td").hover{ 
      function(){ 
       $(this).css('color', 'yellow'); 
      }, function(){ 
       $(this).css('color', 'white'); 
      } 
    } 
} 

我需要實現另一個函數所在的盤符的顏色,當我點擊字母改變。問題是我嘗試了.click(),但它不起作用。顏色是非常不相關的,但可以說我需要它是紅色的。爲了增加複雜性,假設我點擊該字母(將其改爲紅色),當我將鼠標懸停在字母上時,它應該變成黃色,但是在離開時,它應該變回紅色,而不是白色。

我並不是要求某人來實現它,我只需要知道調用什麼方法,比如.hover()或.click()等等......感謝高級!

更新: 我需要在此項目中使用jQuery。我需要使用它,因爲我需要做更多的事情,然後改變顏色,我用顏色作爲例子。

+1

CSS是更適合這種工作。看看CSS僞類! – bezzoon

+0

可能的情況是,您可以維護3個不同的類,並在需要時嘗試應用它。 –

+0

那麼,我需要使用jQuery。我需要做更多的事情,然後改變顏色,我只是用顏色變化作爲例子。 – Kryptos

回答

0

對於jQuery,您應該使用$(selector).click()和$(selector).css({})。

如果您在更改顏色時遇到問題,請使用瀏覽器的CSS繼承檢查器來查看是否有其他內容正在覆蓋它。

另外,你有沒有嘗試CSS僞類:懸停?

例如

.myclass { 
    color: red; 
} 
.myclass:hover { 
    color: blue; 
} 
+0

那麼,我需要使用jQuery。我需要做更多的事情,然後改變顏色,我只是用顏色變化作爲例子。 – Kryptos

+0

@Kryptos你爲什麼不把這些信息添加到你的文章?它會使它更適用於其他人。 –

+0

更新了我原來的帖子 – Kryptos

0

你懸停功能是錯誤的,你正在使用.hover {},所以你需要改用.hover(),我設置了一個標誌,檢查是否被點擊TD,如果點擊不留紅色:

var flag = false; 
$(".alphabet td").hover(
      function(){ 
       $(this).css('color', 'yellow'); 
      }, function(){ 

       $(".alphabet td").click(function(){ 
        $(this).css('color','red'); 
        flag = true; 
       }); 
       if(flag == false){ 
       $(this).css('color', 'white'); 
       } 
      } 
    ); 

fiddle