為什么js放在canvas后面才可以顯示圓形效果,將script放在head和canvas前都沒效果
<body>
<!--<script src="js/time.js"></script>? ? ? ? 沒效果-->
<div>
<canvas id="clock" height="200" width="200"></canvas>?
</div>
</body>
<script src="js/time.js"></script>? ? ? <!--有效果-->
<body>
<!--<script src="js/time.js"></script>? ? ? ? 沒效果-->
<div>
<canvas id="clock" height="200" width="200"></canvas>?
</div>
</body>
<script src="js/time.js"></script>? ? ? <!--有效果-->
2018-04-27
舉報
2019-09-01
瀏覽器的執(zhí)行順序是從上到下加載解析的,放在head的js文件會比body中的html元素優(yōu)先執(zhí)行,此時canvas元素還未被瀏覽器解析渲染出來,所以沒有效果
可以在將代碼放在
?window.onload = function () {
????// 具體代碼
}
中,這樣就能保證js文件先執(zhí)行也能渲染出時鐘
2018-04-28
瀏覽器加載文件是逐行加載,如果放在 canvas 之前,瀏覽器將優(yōu)先解析 js 文件,此時 canvas 還沒有解析出來,控制臺會報錯且頁面沒有任何效果。
所以文件位置的安排很重要。