<html>
<head>
<title>DIsplaying triangle /square</title>
<script type="text/javascript">
document.write("<html><body><p style='line-height:100%;>");
var sides=prompt("Enter the number of sides","3/4");
if(sides==4)
{
var i=0;
var j=0;
var z=0;
while(i<=6)
{
if(i==0||i==6)
{
while(j<=6)
{
document.write("*");
document.write("<span style='visibility:hidden'>*</span>");
++j;
}
j=0;
document.write("<br\>");
}
else
{
while(z<=6)
{
if(z==0||z==6)
{
document.write("*");
document.write("<span style='visibility:hidden'>*</span>");
}
else
{
document.write("<span style='visibility:hidden'>*</span>");
document.write("<span style='visibility:hidden'>*</span>");
}
++z;
}
z=0;
document.write("<br\>");
}
++i;
}
document.write("</p></body></html>");
}
else
{
var i=0;
}
</script>
</head>
</html>
当我在提示框中输入4
输出应该是:此HTML代码让我疯了
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
(认为这是一个完美的正方形它很难在这里画吧。)
,但我得到:
** * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
* * * * * * *
看第一行。它有两个“*”在一起。根据代码,它不应该发生。 document.write("*")
部分出现问题。当我尝试使用alert
进行调试时,我发现第一次(即当i = 0时)第一个document.write("*")
被忽略。但是每隔一段时间它都会被考虑。
我唯一能说的是:不要使用'document.write'。 – 2013-02-18 13:37:37
为什么???这是什么错? – Nikhil 2013-02-18 13:43:17
'document.write(“
...... ** ** **'''必须*导致无效标记。看看你的DOM检查器,看看出了什么问题。 – Bergi 2013-02-18 13:43:57