取决于您需要支持的浏览器,您可以使用 css-transitions 来做到这一点:
.fadeOut{
opacity: 0;
-webkit-transition: opacity .5s ease-out;
-moz-transition: opacity .5s ease-out;
-o-transition: opacity .5s ease-out;
transition: opacity .5s ease-out;
}
只需将 -class 添加.fadeOut
到元素,有关转换的更多信息,请参阅MDN 文章。可以在caniuse.com上查看兼容浏览器列表
除此之外,像 jQuery 这样的库有内置的 fadeIn/fadeOut - 效果,这些效果只是使用 JavaScript 实现的,并且兼容所有主流浏览器。(jQuery API -> 淡出)
如果您希望在没有 jQuery 的情况下执行此操作,您可以查看他们如何直接在源代码中实现它。jsapi.info是一个不错的代码浏览器,它链接了使用的内部函数,让您有机会快速查看被调用的内容以及被调用函数的外观。
编辑:
此外,我刚刚在 Codereview.SE 上偶然发现了一个可以帮助您的问题:Fade In Fade Out in pure JavaScript