Forum Moderators: open
<div id="drawspot" style="height:500"></div>
<script language=javascript>
var dir="right";
var a=20;
var b=20;
function addDot(l,t)
{
document.all.drawspot.innerHTML+="<span style=\"background:black\;position:absolute\;left:"+a+"px\;top:"+b+"px\;margin:0px\;padding:0px\;font-size:1px\;width:1px\;height:1px\"></span>";
if(dir=="right")
{
a++;
}
if(dir=="left")
{
a--;
}
if(dir=="down")
{
b++;
}
if(dir=="up")
{
b--;
}
}
function cd(dirr)
{
dir=dirr;
}
window.setInterval("addDot()",1);
</script>
<a href="#" onClick="cd('right')">Right</a> ¦ <a href="#" onClick="cd('left')">Left</a> ¦ <a href="#" onClick="cd('up')">Up</a> ¦ <a href="#" onClick="cd('down')">Down</a>
I had a go with DOM element creation methods, but it too will slow down.
I think it needs to be done another way - using one div per line.
<html><head><title>DrawSpot</title>
<style>
#drawspot span
{
background: black;
position: absolute;
font-size: 1px;
width: 5px;
height: 5px;
}
</style>
<script language="javascript">
var drn="right";
var x=20;
var y=20;
var k=0function addDot()
{
var dot = document.createElement('span');
dot.style.left = x + 'px';
dot.style.top = y + 'px';
document.getElementById('drawspot').appendChild(dot);switch(drn)
{
case "right": x++; break;
case "left" : x--; break;
case "down" : y++; break;
case "up" : y--; break;
}
}timer = window.setInterval("addDot()",30);
</script>
</head>
<body>
<div id="drawspot" style="height:500"></div><a href="#" onClick="cd('right')">Right</a> ¦
<a href="#" onClick="cd('left')">Left</a> ¦
<a href="#" onClick="cd('up')">Up</a> ¦
<a href="#" onClick="cd('down')">Down</a>
</body>
</html>