javascript - onclick 动画元素背景颜色

标签 javascript jquery

我正在尝试为 div onclick 的背景颜色设置动画,但它根本没有改变它:

HTML

<div id="list2" onclick="changeCol();">
    color
</div>

CSS

#list2{ 宽度:200px;高度:100px;边框:1px实心#ccc;背景颜色:#ccc}

JQuery/JS

function changeCol(){
    alert('foo'); // testing function called
    $("#list2").animate({
      backgroundColor: "#8bed7e"
    }, 500).animate({
      backgroundColor: "#ccc"
    }, 500);
}

有什么想法吗? Here's a fiddle

最佳答案

使用CSS3(仅适用于支持CSS3的浏览器,不支持的浏览器将改变颜色但没有动画):

html:

<div id="list2">color</div>

CSS:

#list2{background:red;transition:0.5s ease;-moz-transition:0.5s ease;-webkit-transition:0.5s ease;}
#list2.clicked{background:blue;}

js:

$(function(){ 
    $('#list2').click(function(){ 
        $(this).toggleClass('clicked') 
    }) 
});

这里的工作示例:http://jsfiddle.net/18v8ofwn/1/

请注意,您可以使用 jQuery UI 库(请参阅 mour 答案)来代替 CSS3,而无需对代码进行任何更改(跨浏览器解决方案)。

希望有帮助。

关于javascript - onclick 动画元素背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27292508/

相关文章:

javascript - 获取本地化的星期几

java - 处理javascript中未终止的字符串常量

javascript - 将不同 <p> 内的所有数字相乘,然后将其相加

java - 接收错误: "200": "parsererror": SyntaxError: "Unexpected end of input" during jquery ajax call

javascript - 如何使用 JavaScript 更新或添加数组中的值?

javascript - 失败的 prop 类型 : The prop `actions` is marked as required in `Testing` , 但其值为 `undefined`

javascript - 我想在单击扩展名时自动单击网站上的按钮

javascript - 样式表仍然在文本 : decoration is set to none 之后的按钮 div 中显示下划线

javascript - 依赖下拉列表的数据验证

javascript - 是否可以在 HTML5 视频中限制转发?