Why no need for swap-buffers or glFinish?
<!DOCTYPE html>
<html>
<head>
<title>Game v.0.0</title>
<script>
var gl = null;
function startGame()
{ { var canvas = document.getElementById('gameCanvas');
var glNames = ["webgl", "experimental-webgl", "webkit-3d", "moz-webgl"];
for (var glNameI = 0; glNameI < glNames.length; ++glNameI)
try
{ gl = canvas.getContext(glNames[glNameI]);
if (gl) break;
}
catch(e)
{}
if(!gl)
{ canvas.outerHTML = "<a>WebGL NOT SUPPORTED? :(</a>";
return;
}
}
window.onkeydown = function(ev)
{ switch(ev.keyCode)
{
case 49:// 1 key
gl.clearColor(0.3,0.7,0.2,1.0);
gl.clear(gl.COLOR_BUFFER_BIT);
break;
case 50:// 2 key
gl.clearColor(0.3,0.2,0.7,1.0);
gl.clear(gl.COLOR_BUFFER_BIT);
break;
}
};
}
</script>
<style type="text/css">
canvas {border: 2px dotted blue;}
</style>
</head>
<body onload="startGame()">
<div><canvas id="gameCanvas" width="640" height="480"></canvas></div>
</body>
</html>