|            
                         脚本说明:  第一步:把如下代码加入<head>区域中  <SCRIPT LANGUAGE="JavaScript">  <!-- Original: 陆晓庆 (xiaoqinglu@263.net) --> 
  <!-- Begin  var MAXHEIGHT = 8;  var ndisk;  var timer = null;  var mvfrom = new Array(255);  var mvto = new Array(255);  var mv, imv;  var tower = new Array(3);  var h = new Array(3);  var spc = " ";  var dname = new Array(  "|",  "111",  "22222",  "3333333",  "444444444",  "55555555555",  "6666666666666",  "777777777777777",  "88888888888888888"); 
  function init() {  if (!timer) {  s = document.formHanoi.disk.options[document.formHanoi.disk.selectedIndex].value;  if (s == "random") {  now = new Date();  ndisk = parseInt(now.getTime() / 1000) % 8 + 1;  delete now;  }  else ndisk = s;  mv = 0;  hanoi(0, 2, 1, ndisk);  for (i = 0; i < 3; i++)  tower[i] = new Array(MAXHEIGHT);  for (i = 0; i < ndisk; i++)  tower[0][i] = ndisk - i;  h[0] = ndisk;  h[1] = h[2] = 0;  imv = 0;  document.formHanoi.display.value = gentower();  timer = window.setTimeout("gennexttower()", document.formHanoi.delay.options  [document.formHanoi.delay.selectedIndex].value);  }  }  function stop() {  if (timer) {  window.clearTimeout(timer);  timer = null;  }  }  function hanoi(from,to,buf,nmv) {  if (nmv > 1) {  hanoi(from, buf, to, nmv - 1);  mvfrom[mv] = from;  mvto[mv++] = to;  hanoi(buf, to, from, nmv - 1);  }  else {  mvfrom[mv] = from;  mvto[mv++] = to;  }  }  function gennexttower() {  tower[mvto[imv]][h][mvto[imv]]++] = tower[mvfrom][imv]][--h][mvfrom][imv]]];  document.formHanoi.display.value = gentower();  if (++imv < mv)  timer = window.setTimeout("gennexttower()", document.formHanoi.delay.options  [document.formHanoi.delay.selectedIndex].value);  else {  for (i = 0; i < 3; i++)  delete tower[i];  timer = null;  }  }  function gentower() {  s = " \n";  for (i = MAXHEIGHT - 1; i >= 0; i--) {  for (j = 0; j < tower.length; j++) {  len = i < h[j] ? tower[j][i] : 0;  width = MAXHEIGHT - len;  s += " " + spc.substring(0, width) + dname[len] + spc.substring(0, width);  }  s += "\n";  }  return s+"=======================================================";  }  // End -->  </script> 
 
 
  第二步:把如下代码加入<body>区域中  <form name=formHanoi>  <textarea name=display rows=10 cols=56></textarea><br>  <table border=0 cellspacing=10 cellpadding=0>  <tr>  <td>堆积层数</td>  <td><select name=disk>  <option selected value=random>Random  <option value=1>1  <option value=2>2  <option value=3>3  <option value=4>4  <option value=5>5  <option value=6>6  <option value=7>7  <option value=8>8  </select></td>  </tr>  <tr>  <td>延迟时间</td>  <td><select name=delay>  <option value=100>100 milliseconds  <option value=200>200 milliseconds  <option value=300>300 milliseconds  <option value=400>400 milliseconds  <option selected value=500>500 milliseconds  <option value=600>600 milliseconds  <option value=700>700 milliseconds  <option value=800>800 milliseconds  <option value=900>900 milliseconds  <option value=1000>1000 milliseconds  </select></td>  </tr>  </table>  <input type=button value="Start" onClick="init();">  <input type=button value="Stop" onClick="stop();">  </form> 
 
   
 |