javascript - 纯 JavaScript 淡入淡出 - 淡入不起作用

标签 javascript

请参阅下面的代码段。淡出效果很好,但知道为什么它不会淡入吗?

我的 HTML:

  <div id="id10574"><span style="font-size:6em">♥</span></div>
  <button id="b1">Fade Out</button>
  <button id="b2">Fade In</button>
  <script src="fade.js"></script>

和 JS:

var cat = document.getElementById("id10574");

cat.style.opacity = 1;

function fadeout() {
    if (cat.style.opacity > 0) {
        cat.style.opacity = (cat.style.opacity - 0.01);
        setTimeout( fadeout, 10 );
    } else { 

    }
}


function fadein() {
    if (cat.style.opacity < 1) {
        cat.style.opacity = (cat.style.opacity + 0.01);
        setTimeout( fadein, 10 );
    } else { 

    }
}

document.getElementById("b1").addEventListener("click", fadeout , false);
document.getElementById("b2").addEventListener("click", fadein , false);

我真的被这个难住了。尝试制作一个适用于 IE8(企业环境中的 Sharepoint)的简单效果。

谢谢!

最佳答案

基本上,cat.style.opacity 是一个字符串。所以 cat.style.opacity + 0.01 将被视为字符串连接。

你可以用 parseFloat(cat.style.opacity) + 0.01 代替

事实上,有很多方法可以将字符串强制转换为数字。 cat.style.opacity - 0.0 作为您的 fadeout(),甚至 1.0 * cat.style.opacity

参见 https://jsfiddle.net/03rzmyL0/

关于javascript - 纯 JavaScript 淡入淡出 - 淡入不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29073294/

相关文章:

javascript - Jquery - 在点击 div 时在滚动上添加类 - IE 和 Firefox 问题

javascript - 设置动画谷歌地图标记

javascript - 如何使用div在javascript中显示当前月份,年份

javascript - 一键下载多个 pdf 文件 zip

javascript - 如果选中,将复选框中的值存储到字符串中

javascript - 所有事件的本地存储

javascript - react : recursively render nested elements

javascript - 如何通过 Javascript 访问 php 代码中的输入名称?

javascript - jquery中刷新DataTable插件表

javascript - 如何使用jquery ajax调用php函数