以下是我的Jquery代码:
$("#test").click(function() {
if($(this).css("background-color")=="#FFFFFF")
$(this).css("background-color","blue");
else
if($(this).css("background-color")=="blue")
$(this).css("background-color","#FFFFFF");
});
下面是HTML:
<div id="test">
click me!
</div>
你能解释一下为什么不起作用吗?
非常感谢
http://jsfiddle.net/m73faf4g/
发布于 2015-01-09 21:46:15
你还忘了在你的小提琴里加入JQuery
更新Fiddle
$(function(){
$('#test').click(function() {
if($(this).css('background-color') == 'rgb(255, 255, 255)')
$(this).css('background-color', 'blue');
else
if($(this).css('background-color') == 'rgb(0, 0, 255)')
$(this).css('background-color', '#FFFFFF');
});
});
编辑
另一种方式,如果你愿意的话:
.blue {
background-color: blue !important;
}
$(function(){
$('#test').click(function() {
$(this).toggleClass('blue');
});
});
替代填充
发布于 2015-01-09 21:49:11
创建一个不依赖于颜色的切换函数,因为返回的样式在不同的浏览器中可能不一致,这取决于它们是否支持rgb/rgba/hsl等等。
$("#test").on('click', function() {
var flag = $(this).data('flag');
$(this).css('background-color', flag ? '#fff' : 'blue');
$(this).data('flag', !flag);
});
小提琴
https://stackoverflow.com/questions/27869705
复制相似问题