html - 用javaScript写的这个计时器为什么会出错?
迷茫
迷茫 2017-04-11 13:17:22
[JavaScript讨论组]

用javaScript写了一个计时器,然后设置1秒钟刷新一次。
相同的页面下同样也用jQuery.nicescroll写了一个滚动条。
但是呢,写好之后发现滚动条竟然也会随着计时器的记时而不断地display:none——display:block
这个怎么破?求助非常感谢!

项目地址:http://hkhgxx.azurewebsites.n...

代码:

//首先,是滚动条的设置
$(document).ready(function() { 
    'use strict';
    $("body").niceScroll({
        cursorcolor: "#F65E2F",
        cursorwidth: '4px',
        zindex: 999998,
        cursorborder: "0",
        cursorborderradius: "0",
        railpadding: { top: 4, right: 4, left: 0, bottom: 4 },
        horizrailenabled: false,
        boxzoom:true,
        autohidemode:false
    });
});
//这里是写了一个p方便操作滚动条
$(document).ready(function(){
    'use strict';
    $(".container").after("

"); $(".touchArea-cursor").css("height",window.innerHeight); $(".touchArea-cursor").hover(function(){ $(".nicescroll-cursors").css("width","12px"); },function(){ $(".nicescroll-cursors").css("width","4px"); }); }); //这里是倒计时函数。 function whatisGaokao(){ 'use strict'; var date =new Date(); date.setFullYear(2018,6,7,8); var today = new Date(); var Ytoday = today.getFullYear(); var Mtoday = today.getMonth() + 1; var Dtoday = today.getDate(); var dateT = Mtoday + '-' + Dtoday + '-' + Ytoday; var TheDayOfGaokao = "7-6-2018"; var stringDateToday = dateT.split("-"); var odate1 = new Date(stringDateToday[0] + '-' + stringDateToday[1] + '-' + stringDateToday[2]); var stringDateTodayOut = TheDayOfGaokao.split("-"); var odate2 = new Date(stringDateTodayOut[0] + '-' + stringDateTodayOut[1] + '-' + stringDateTodayOut[2]); var iDaysY = parseInt(Math.abs(odate1 - odate2) / 1000 / 60 / 60 /24); var iDaysH = " "; var iDaysM = " "; var iDaysS = " "; var SDTH = today.getHours(); if (SDTH > 12){ SDTH = Math.ceil(SDTH / 2); SDTH = 12 - SDTH; iDaysH = Math.abs(8 + SDTH); }else if(SDTH > 8){ SDTH = 12 - SDTH; iDaysH = Math.abs(20 - SDTH); }else{ iDaysH = Math.abs(SDTH - 8); } var SDTM = today.getMinutes(); iDaysM = 59 - SDTM; var SDTS = today.getSeconds(); iDaysS = 59 - SDTS; var SDOH = today.getHours(); var SDOM = today.getMinutes(); var SDOS = today.getSeconds(); var back = " "; var feedback = " "; var so = " "; if (date > today){ back = "距离高考还有"; if (iDaysY < 10){ feedback = "还看什么看啊!离高考只有十天不到了!还不快点去复习!"; so = back + iDaysY + "天 " + iDaysH + "小时" + iDaysM + "分钟" + iDaysS + "秒"; }else if (iDaysY > 10){ feedback = "不过,也不用太着急,浏览这个网站的时间还是有的嘛!"; so = back + iDaysY + "天 " + iDaysH + "小时" + iDaysM + "分钟" + iDaysS + "秒"; } } else{ back = "高考已经过去了"; feedback = "啊, 回想起来还是满满的回忆啊!"; so = back + iDaysY + "天 " + SDOH + "小时" + SDOM + "分钟" + SDOS + "秒"; } var soWhat = "

" + so + "

" + feedback + "

"; $(".gaokao").html(soWhat); } $(document).ready(function(){ 'use strict'; window.setInterval(function(){whatisGaokao();},1000); }); //问题来了,这个计时器为什么也会对滚动条产生作用?
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(2)
天蓬老师


没细看代码,上图,nicescroll-cursor是包含在p ascrail12000里的,后者在定时器的回调中不断出现消失,故前者也一样

大家讲道理
$(document).ready(function() { 
    whatisGaokao()//调用方法
    $("body").niceScroll({
        cursorcolor: "#F65E2F",
        cursorwidth: '4px',
        zindex: 999998,
        cursorborder: "0",
        cursorborderradius: "0",
        railpadding: { top: 4, right: 4, left: 0, bottom: 4 },
        horizrailenabled: false,
        boxzoom:true,
        autohidemode:false
    });
});
function whatisGaokao(year,month,day,hour,minute,second){
    var leftTime = (new Date(year,month-1,day,hour,minute,second)) - (new Date()); //计算剩余的毫秒数
    var days = parseInt(leftTime / 1000 / 60 / 60 / 24 , 10); //计算剩余的天数
    var hours = parseInt(leftTime / 1000 / 60 / 60 % 24 , 10); //计算剩余的小时
    var minutes = parseInt(leftTime / 1000 / 60 % 60, 10);//计算剩余的分钟
    var seconds = parseInt(leftTime / 1000 % 60, 10);//计算剩余的秒数
    $(".gaokao").html(days+"天" + hours+"小时" + minutes+"分"+seconds+"秒");
    setInterval("whatisGaokao(2016,6,6,6,6,6)",1000);
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号