亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問這里哪里出問題了

照著視頻完成的,但最后怎么刷新都是顯示這個,請問是哪里出問題了

https://img1.sycdn.imooc.com//5d5425150001bb0b14140370.jpg

html文件:

<!DOCTYPE?html>
<html>
<head>
??<meta?charset="UTF-8">
??<title>Countdown</title>
??<link?rel="stylesheet"?href="./style/style.css">
</head>
<body>
??<canvas?id="countdown">
????當前瀏覽器不支持Canvas,請更換瀏覽器后再試
??</canvas>
??<script?type="text/javascript"?src="Countdown-digit.js"></script>
??<script?type="text/javascript"?src="Countdown.js"></script>
</body>
</html>


Countdown-digit.js文件:

//?存放模型
digit?=
??[
????[
??????[0,?0,?1,?1,?1,?0,?0],
??????[0,?1,?1,?0,?1,?1,?0],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?1,?1,?0,?1,?1,?0],
??????[0,?0,?1,?1,?1,?0,?0]
????],?//0
????[
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?1,?1,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[1,?1,?1,?1,?1,?1,?1]
????],?//1
????[
??????[0,?1,?1,?1,?1,?1,?0],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?1,?1,?0,?0,?0],
??????[0,?1,?1,?0,?0,?0,?0],
??????[1,?1,?0,?0,?0,?0,?0],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?1,?1,?1,?1,?1]
????],?//2
????[
??????[1,?1,?1,?1,?1,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?1,?1,?1,?0,?0],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?1,?1,?1,?1,?1,?0]
????],?//3
????[
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?1,?1,?1,?0],
??????[0,?0,?1,?1,?1,?1,?0],
??????[0,?1,?1,?0,?1,?1,?0],
??????[1,?1,?0,?0,?1,?1,?0],
??????[1,?1,?1,?1,?1,?1,?1],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?1,?1,?1,?1]
????],?//4
????[
??????[1,?1,?1,?1,?1,?1,?1],
??????[1,?1,?0,?0,?0,?0,?0],
??????[1,?1,?0,?0,?0,?0,?0],
??????[1,?1,?1,?1,?1,?1,?0],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?1,?1,?1,?1,?1,?0]
????],?//5
????[
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?1,?1,?0,?0,?0],
??????[0,?1,?1,?0,?0,?0,?0],
??????[1,?1,?0,?0,?0,?0,?0],
??????[1,?1,?0,?1,?1,?1,?0],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?1,?1,?1,?1,?1,?0]
????],?//6
????[
??????[1,?1,?1,?1,?1,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?0,?1,?1,?0,?0,?0],
??????[0,?0,?1,?1,?0,?0,?0],
??????[0,?0,?1,?1,?0,?0,?0],
??????[0,?0,?1,?1,?0,?0,?0]
????],?//7
????[
??????[0,?1,?1,?1,?1,?1,?0],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?1,?1,?1,?1,?1,?0],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?1,?1,?1,?1,?1,?0]
????],?//8
????[
??????[0,?1,?1,?1,?1,?1,?0],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[1,?1,?0,?0,?0,?1,?1],
??????[0,?1,?1,?1,?0,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?0,?1,?1],
??????[0,?0,?0,?0,?1,?1,?0],
??????[0,?0,?0,?1,?1,?0,?0],
??????[0,?1,?1,?0,?0,?0,?0]
????],?//9
????[
??????[0,?0,?0,?0],
??????[0,?0,?0,?0],
??????[0,?1,?1,?0],
??????[0,?1,?1,?0],
??????[0,?0,?0,?0],
??????[0,?0,?0,?0],
??????[0,?1,?1,?0],
??????[0,?1,?1,?0],
??????[0,?0,?0,?0],
??????[0,?0,?0,?0]
????]?//:
??];


Countdown.js文件

var?radius?=?8;
var?margin_top?=?60;
var?margin_left?=?30;
const?endTime?=?new?Date(2019,?7,?14,?22,?04,?52);
var?currentShowTimeSeconds?=?0;
window.onload?=?function()?{
??var?countdown?=?document.getElementById("countdown");
??countdown.width?=?1000;
??countdown.height?=?700;
??if?(countdown.getContext("2d"))?{
????var?context?=?countdown.getContext("2d");
??}?else?{
????alert("當前瀏覽器不支持Canvas,請更換瀏覽器后再試");
??}
??currentShowTimeSeconds?=?getCurrentShowTimeSeconds();
??render(context);
}
function?getCurrentShowTimeSeconds()?{
??var?currentTime?=?new?Date();
??var?ret?=?endTime.getTime()?-?currentTime.getTime();
??ret?=?Math.round(ret?/?1000);
??return?ret?>=?0???ret?:?0;
}
function?render(context)?{
??var?hours?=?parseInt(currentShowTimeSeconds?/?3600);
??var?minutes?=?parseInt((currentShowTimeSeconds?-?hours?*?3600)?/?60);
??var?seconds?=?currentShowTimeSeconds?%?60;
??renderDigit(margin_left,?margin_top,?parseInt(hours?/?10),?context);
??renderDigit(margin_left?+?15?*?(radius?+?1),?margin_top,?parseInt(hours?%?10),?context);
??renderDigit(margin_left?+?30?*?(radius?+?1),?margin_top,?10,?context);
??renderDigit(margin_left?+?39?*?(radius?+?1),?margin_top,?parseInt(minutes?/?10),?context);
??renderDigit(margin_left?+?54?*?(radius?+?1),?margin_top,?parseInt(minutes?%?10),?context);
??renderDigit(margin_left?+?69?*?(radius?+?1),?margin_top,?10,?context);
??renderDigit(margin_left?+?78?*?(radius?+?1),?margin_top,?parseInt(seconds?/?10),?context);
??renderDigit(margin_left?+?93?*?(radius?+?1),?margin_top,?parseInt(seconds?%?10),?context);
}
function?renderDigit(x,?y,?num,?context)?{
??context.fillStyle?=?"rgb(0,?102,?153)";
??for?(var?i?=?0;?i?<?digit[num].length;?i++)?{
????for?(var?j?=?0;?j?<?digit[num][i].length;?j++)?{
??????if?(digit[num][i][j]?==?1)?{
????????context.beginPath();
????????//?第(i,j)個圓的圓心位置
????????context.arc(x?+?j?*?2?*?(radius?+?1)?+?(radius?+?1),?y?+?i?*?2?*?(radius?+?1)?+?(radius?+?1),?radius,?0,?2?*?Math.PI);
????????context.closePath();
????????context.fill();
??????}
????}
??}
}


正在回答

3 回答

試試把天數改成比現在的天數大

0 回復 有任何疑惑可以回復我~

補充一下,不是ret值不能太大,是Math.round(ret/100000)這個值保持在5位數字以下

0 回復 有任何疑惑可以回復我~
#1

巨好看的丑娃

還是不行啊
2020-01-05 回復 有任何疑惑可以回復我~

我們程序員呢,最忌諱的是遇事緊張,著急。應該遇到事情先讓自己冷靜下來,一步一步查看。init開始,一步一步打印我們需要的值,看下來發現是 currentShowTimeSeconds 值太大,導致render函數中hours、minutes、seconds三個常量太大,進而導致函數renderDigit中參數num太大,找不到digit數組中的元素,最后顯示你看到的樣子,解決方法:函數getCurrentShowTimeSeconds中的ret/1000改為 ret/100000, ret不能太大,保持在5位數字一下就好。有什么錯誤的地方,請各位同行多多指教

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請問這里哪里出問題了

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號