的Javascript背景色切换

问题描述:

我试图使用JavaScript来控制表单元素的背景颜色,是我到目前为止有:的Javascript背景色切换

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('option.POIs').click(function() { 
     $(this) 
      .css('background-color','#EE178C') 

     }); 
    }); 

    </script> 

它工作得很好,不过,我想为它之间切换不同的颜色。默认颜色是#FFFFFF,另一个是#EE178C。所以,当页面加载时,bg颜色为#FFFFFF,当我点击该项目时,bg变为#EE178C,并且如果再次单击它,它将返回到#FFFFF。

任何帮助,将不胜感激!

FYI

.POIs{background:#fff}.POIs.toggle{background:#EE178C} 

脚本

$('option.POIs').click(function() {$(this).toggleClass('toggle')}) 
+0

太酷了:-) – 2012-01-12 01:35:21

+0

很高兴我们同意:) @SergioTulentsev – 2012-01-12 01:37:00

你应该可以在你的CSS中使用:focus伪选择器。没有JavaScript要求。

+0

若他们想切换颜色而不失去焦点,这似乎是这样。 – 2012-01-12 01:03:11

这是怎么回事?

var isDefaultColor = true; 
var defaultColor = '#FFFFF'; 
var alternateColor = '#EE178C'; 

if(isDefaultColor) 
    $(this).css('background-color', alternateColor); 
else 
    $(this).css('background-color', defaultColor); 

isDefaultColor = !isDefaultColor; 
+0

不可靠的,因为我发现了困难的方式。某些浏览器将您的输入更改为'rgb()'格式。我建议使用变量'isColor1'并在背景颜色切换时切换它。 – 2012-01-12 01:02:29

+0

@Kolink:好点:-) – 2012-01-12 01:04:03