欢乐满人间 2016-08-03 03:21 采纳率: 0%
浏览 911
已采纳

原生js为何无法实现渐显效果?

function addOpacity(id){
var dopacity=0.05;
var obj=document.getElementById(id);
obj.style.opacity+=dopacity;
}
function graduallyShow(id){
var time;
var obj=document.getElementById(id);
time=setInterval(function(){
if(obj.style.opacity<1){
addOpacity(id);
}else{clearInterval(time)}
},50);
}
graduallyShow('div1');

  • 写回答

1条回答 默认 最新

  • Go 旅城通票 2016-08-03 05:55
    关注

    opacity要ie9+才支持,ie8-用alpha滤镜,确认你浏览器对了没有。。并且obj.style.opacity是字符串,+=是字符串操作,要转换为数字后再操作

     <div id="div1" style="opacity:0;background:#000;color:#fff">文字内容</div>
    <script>
        function addOpacity(id) {
            var dopacity = 0.05;
            var obj = document.getElementById(id);
            var opacity = parseFloat(obj.style.opacity);
            opacity = isNaN(opacity) ? 1 : opacity;//防止style未定义opacity,通过样式定义的
            obj.style.opacity = opacity + dopacity;
        }
        function graduallyShow(id) {
            var time;
            var obj = document.getElementById(id);
            time = setInterval(function () {
                if (obj.style.opacity < 1) {
                    addOpacity(id);
                } else { clearInterval(time);console.log('clear') }
            }, 50);
        }
        graduallyShow('div1');
    </script>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助