Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
浏览器中未显示Javascript_Javascript_Html - Fatal编程技术网

浏览器中未显示Javascript

浏览器中未显示Javascript,javascript,html,Javascript,Html,我正在本地主机上制作web应用程序,但浏览器页面始终显示为空白,我做错了什么?谢谢 <html> <head> <script> window.onload = function() { var canvas = document.getElementById("canvas"), ctx = canvas.getContext("2d"), W = window.innerWidth, H = window.innerHeight; setInterv

我正在本地主机上制作web应用程序,但浏览器页面始终显示为空白,我做错了什么?谢谢

<html>
<head>
<script>

window.onload = function() {
var canvas = document.getElementById("canvas"),
ctx = canvas.getContext("2d"),
W = window.innerWidth,
H = window.innerHeight;


setInterval(draw, 33);

function draw() {
ctx.globalcompositeOperation = "source-over";
ctx.fillStyle = "black";
ctx.fillRect(0,0,W,H);
}
}

</script>
</head>

<body>
    <canvas id="canvas"></canvas>

window.onload=函数(){
var canvas=document.getElementById(“canvas”),
ctx=canvas.getContext(“2d”),
W=窗宽,
H=窗内高度;
设置间隔(绘制,33);
函数绘图(){
ctx.globalcompositeOperation=“源代码结束”;
ctx.fillStyle=“黑色”;
ctx.fillRect(0,0,W,H);
}
}

您在分配给
onload
的匿名函数中声明了一组变量。他们不是全球性的

然后尝试(每隔一段时间)将它们作为全局对象访问

如果您查看开发人员工具中的控制台,您应该会看到一系列引用错误

移动
setInterval
并在分配给
onload
的匿名函数中绘制
函数声明

window.onload=函数(){
var canvas=document.getElementById(“canvas”),
ctx=canvas.getContext(“2d”),
W=窗宽,
H=窗内高度;
设置间隔(绘制,33);
函数绘图(){
ctx.globalcompositeOperation=“源代码结束”;
ctx.fillStyle=“黑色”;
ctx.fillRect(0,0,W,H);
}
}

您在分配给
onload
的匿名函数中声明了一组变量。他们不是全球性的

然后尝试(每隔一段时间)将它们作为全局对象访问

如果您查看开发人员工具中的控制台,您应该会看到一系列引用错误

移动
setInterval
并在分配给
onload
的匿名函数中绘制
函数声明

window.onload=函数(){
var canvas=document.getElementById(“canvas”),
ctx=canvas.getContext(“2d”),
W=窗宽,
H=窗内高度;
设置间隔(绘制,33);
函数绘图(){
ctx.globalcompositeOperation=“源代码结束”;
ctx.fillStyle=“黑色”;
ctx.fillRect(0,0,W,H);
}
}

除了@Quentin提到的其他问题外,还有一些关于可变范围的问题。您在
窗口内定义了局部变量
ctx
W
H
。onload
,无法从
draw
访问


var-ctx,W,H;
window.onload=函数(){
var canvas=document.getElementById(“canvas”);
W=窗宽;
H=窗内高度;
ctx=canvas.getContext(“2d”);
设置间隔(绘制,33);
}
函数绘图(){
ctx.globalCompositeOperation=“源代码结束”;
ctx.fillStyle=“黑色”;
ctx.fillRect(0,0,W,H);
}

除了@Quentin提到的其他问题外,还有一些关于可变范围的问题。您在
窗口内定义了局部变量
ctx
W
H
。onload
,无法从
draw
访问


var-ctx,W,H;
window.onload=函数(){
var canvas=document.getElementById(“canvas”);
W=窗宽;
H=窗内高度;
ctx=canvas.getContext(“2d”);
设置间隔(绘制,33);
}
函数绘图(){
ctx.globalCompositeOperation=“源代码结束”;
ctx.fillStyle=“黑色”;
ctx.fillRect(0,0,W,H);
}


是否已检查开发人员控制台中的错误消息?已更正,但仍然相同problem@Hacketo-body元素的end标记是可选的(根据HTML规范)(与start标记一样)。是否已检查开发人员控制台中的错误消息?已更正,但仍然相同problem@Hacketo-body元素的end标记是可选的(根据HTML规范)(与start标记一样).我像你说的那样改正了,但还是一样problem@zigg75483-在答案中的演示中效果很好。是的,所以我不确定为什么我的没有出现,我甚至复制并粘贴了你的代码,但仍然是空白的,因为我按照你说的更正了代码,但仍然是一样的problem@zigg75483-在答案中的演示中效果很好。是的,所以我不确定为什么我的代码没有出现,我甚至复制并粘贴了你的代码,但仍然是空白的,因为我复制了你的代码,但对我来说仍然是空白的,不确定发生了什么我真的不确定你做了什么,你可以在这里运行代码段并查看它的工作情况。我已经设法使黑色背景显示出来,但它没有显示为完整的页面,即使使用window.innerwidth这是因为实际的画布不是窗口的大小。尝试在
窗口中分别将
canvas.width
canvas.height
设置为
W
H
。onload
。我复制了你的代码,但对我来说仍然是空白的,不确定发生了什么事,我真的不确定你做了什么,您可以在此处运行代码段并查看它的工作情况。我已设法使黑色背景显示出来,但它不会显示为整个页面,即使使用window.innerwidth这是因为实际画布的大小与窗口的大小不同。尝试在
窗口中分别将
canvas.width
canvas.height
设置为
W
H
。onload