gpt4 book ai didi

javascript - 在这个 JavaScript 函数中显示淡入效果?

转载 作者:行者123 更新时间:2023-11-28 18:46:27 25 4
gpt4 key购买 nike

我有这个功能,可以在页面加载时显示加载图像:

<script>
function onReady(callback) {
var intervalID = window.setInterval(checkReady, 1000);

function checkReady() {
if (document.getElementsByTagName('body')[0] !== undefined) {
window.clearInterval(intervalID);
callback.call(this);
}
}
}

function show(id, value) {
document.getElementById(id).style.display = value ? 'block' : 'none';
}

onReady(function () {
show('all', true);
show('loading', false);
});
</script>

jsfiddle

我想要做的是添加淡入效果以在加载完成时显示 div #all。

我可以在function show中添加淡入效果吗?我可以使用jquery吗?有什么想法吗?

最佳答案

您可以使用以下 JavaScript 函数来实现淡入和淡出效果。 CREDIT

    function fadeIn(el, display) {
el.style.opacity = 0;
el.style.display = display || "block";

(function fade() {
var val = parseFloat(el.style.opacity);
if (!((val += .01) > 1)) {
el.style.opacity = val;
requestAnimationFrame(fade);
}
})();
}

function fadeOut(el) {
el.style.opacity = 1;

(function fade() {
if ((el.style.opacity -= .01) < 0) {
el.style.display = "none";
} else {
requestAnimationFrame(fade);
}
})();
}

并将您的显示功能更改为以下。

function show(id, value) {
var el = document.getElementById(id);
if(value)
fadeIn(el)
else
fadeOut(el);
}

UPDATED FIDDLE

关于javascript - 在这个 JavaScript 函数中显示淡入效果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35239285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com