我做了这个小小的'蚀刻了一个'类型的东西,我希望每次触发mouseenter事件时,不透明度增加一点到完全不透明度。 我把一切都搞定了,但对于我的生活,我无法弄清楚为什么不透明度一直到1。
$(document).on("mouseenter", "td", function () {
$(this).css("background","black").css({
opacity: function (index, value) {
return parseFloat(value) + 0.1;
}
});
});
CSS:
td, tr {
opacity:0.5;
width:auto;
height:auto;
}
如果我将css设置为1,则mouseenter事件会使其完全变黑。如果它是0.5,则mouseenter从0.5开始并进入' 1'在debugg中,但实际上它看起来像0.7。
如果我在CSS中删除.css("background","black")
和/或添加background:black;
。代码没有做任何事情。
答案 0 :(得分:1)
那是因为你在tr
上设置了50%的不透明度,所以即使td
上的不透明度为100%,它也会被行淡化。只需拆分CSS:
td,tr {
width:auto;
height:auto;
}
td{
opacity : 0
}
答案 1 :(得分:0)
您只是更新了td
的不透明度,所以当它完全不透明时,包含它的tr
仍然是50%的不透明度,因此整个事情是50%< / p>