<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Sugo

    Goof off ? no way: never
    posts - 20, comments - 8, trackbacks - 73, articles - 1
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    字符串下落

    Posted on 2007-07-30 16:48 sugo 閱讀(374) 評論(0)  編輯  收藏

         實現(xiàn)了控制隨機生成的一個六位字符串下落,可以向左、向右、向下加速。實現(xiàn)的功能仿照俄羅斯方塊來做,本來想實現(xiàn)上下兩行相同字母消除功能,但想起一個方法(代碼中的erase()方法),感覺沒問題,但一直沒有實現(xiàn),后來也懶得想了。現(xiàn)將代碼貼在這里,希望讀到這篇文章的朋友如果感興趣的話提出寶貴意見,并可以隨意拷貝代碼完善功能:)
     <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="Sugo">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    </HEAD>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    var incx=10;//每次下落的高度
    var sty=20; //開始時候的縱坐標
    var stx=500; //開始時候的橫坐標
    var num=0; //每個div標號,同時也起到確定下一個div元素停止的位置
    var len=10;
    var timer;//定時器
    //var arr0,arr1,arr2,arr3,arr4,arr5,arr6,arr7,arr8,arr9,arr10,arr11,arr12,arr13,arr14,arr15; //用于字母消除作用的數(shù)組,此功能沒實現(xiàn),這些變量可以不用
    //初始字符串初始位置
    function firstshow(){ 
     //temp=document.getElementById("sg");
     sg0.style.pixelTop=sty;
     sg0.style.pixelLeft=stx;
     
    }
    //增加字符串
    function addDiv(){
     tt=document.createElement("div");
     divcontent=randomString(6);
     cont=document.createTextNode(divcontent);
     tt.appendChild(cont);
     tt.id="sg"+num;
     tt.style.position="absolute";
    // var obj=eval("sg"+num);
     tt.style.pixelTop=10;
     tt.style.pixelLeft=500;
     document.body.appendChild(tt);
     
    }

    //字符串下落方法
     function fall(id){
       var obj=eval("sg"+id);
      
      obj.style.pixelTop+=incx;
      obj.style.pixelLeft=stx;
      if(obj.style.pixelTop==(610-len*num)){   //到達目的地址時(下落到610處,此處可隨意改動)
       obj.style.pixelTop=610-len*num;
       //erase(); 功能沒有實現(xiàn)
       num++;
       addDiv();
       fall(num);
      }
      else if(obj.style.pixelTop<(610-len*num)) //沒有到達目的地址時
      timer = setTimeout('fall(num)',1000); //1000可以換成任意數(shù)字,越小下落速度越快
      else if(obj.style.pixelTop>(610-len*num)) //處理出現(xiàn)地址大于目的地址時
      {
      }
     }
     //當使用方向鍵操作時使用的下落方法
     function fall1(id,sx,sy){
       var obj=eval("sg"+id);
      
      obj.style.pixelTop=sy+incx;
      obj.style.pixelLeft=sx;
      y=obj.style.pixelTop;
      x=obj.style.pixelLeft;
      if(obj.style.pixelTop==(610-len*num)){   //到達目的地址時
       obj.style.pixelTop=610-len*num;
       //erase(); 功能沒有實現(xiàn)
       num++;
       addDiv();
       fall(num);
      }
      else if(obj.style.pixelTop<(610-len*num)) //沒有到達目的地址時
      timer = setTimeout('fall1(num,x,y)',1000); //1000可以換成任意數(shù)字,越小下落速度越快
      else if(obj.style.pixelTop>(610-len*num)) //處理出現(xiàn)地址大于目的地址時
      {
      }
     }
    //產(chǎn)生隨機六位字符串
     function randomString(leng){
       var source="abcdefghijklmnopqrstuvwxyz";
       var result="";
       for(var i=0;i<leng;i++){
      
        result+=source.charAt(Math.random()*source.length)
       }
       return result;
     }
     //鍵盤控制
     function document.onkeydown()

      if (window.event.keyCode==37)   // 方向鍵 <-
      { 
        var temp=document.getElementById("sg"+num);
     temp.style.pixelLeft-=8;
     x=temp.style.pixelLeft;
     y=temp.style.pixelTop;
     clearTimeout(timer);
        fall1(num,x,y-10);
       }
      else if (window.event.keyCode==39)   // 方向鍵 ->
      { 
        var temp=document.getElementById("sg"+num);
     temp.style.pixelLeft+=8;
     x=temp.style.pixelLeft;
     y=temp.style.pixelTop;
     clearTimeout(timer);
        fall1(num,x,y-10);
       }
       else if (window.event.keyCode==40){ //方向鍵 |
         var temp=document.getElementById("sg"+num);
      temp.style.pixelTop+=10;
         x=temp.style.pixelLeft;
      y=temp.style.pixelTop;
      clearTimeout(timer);
         fall1(num,x,y-10);
       }
    }
    //字母消除程序,暫時不能實現(xiàn)功能
     function erase(){
      var pos=new Array();
      for(var i=0;i<=num;i++){ //得到所有存在的div每個字符的位置值
        dpos=document.getElementById("sg"+i);
     x=dpos.style.pixelLeft;
     //content=dpos.value;
        obj=eval("arr"+i);
     obj=new Array();
     for(var j=0;j<6;j++){
       obj[j]=x+j;
     }
     pos[i]=obj;
      }
     //alert(num);
      if(num>=1){
       
        for(t=num-1;t<num;t++){
       for(tt=0;tt<6;tt++){
         for(ttt=0;ttt<6;ttt++){
      // alert(pos[t][ttt]);
        if(pos[t][tt]==pos[t+1][ttt]){
        // alert("here"+tt+"  "+ttt);
          mod1=document.getElementById("sg"+t);
       mod2=document.getElementById("sg"+(t+1));
          var rep1="",rep2="";
       for(var l=0;l<mod1.innerHTML.length;l++){
         if(l!=tt){
         rep1+=mod1.innerHTML.charAt(l);
         }
         else{
         rep1+="-";
         }
       }
       mod1.innerHTML=rep1;
       //rep1='';
       //alert(mod1.innerHTML);
       for(var ll=0;ll<mod2.innerHTML.length;ll++){
         if(ll!=ttt){
          rep2+=mod2.innerHTML.charAt(ll);
         }
         else{
          rep2+="-";
                  }
       }
       mod2.innerHTML=rep2;
       //rep2='';
        }
      }
          }
        }
      }
     }
    //-->
    </SCRIPT>
    <BODY onload="firstshow();" >

    <div id="sg0" style="position:absolute"><SCRIPT LANGUAGE="JavaScript">
    <!--
    document.write(randomString(6));  //6可以改為任意數(shù)字,數(shù)字即是字符串的長度
    //-->
    </SCRIPT></div>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
      fall(0);
    //-->
    </SCRIPT>
    </BODY>
    </HTML>


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 日本大片在线看黄a∨免费| 色噜噜噜噜亚洲第一| 亚洲av日韩av高潮潮喷无码| 国产亚洲午夜高清国产拍精品| 久久亚洲国产成人影院网站| 人人爽人人爽人人片A免费 | 日韩大片在线永久免费观看网站| 毛片免费观看网址| 一区国严二区亚洲三区| 亚洲一区二区中文| 亚洲欧美日韩综合久久久久 | 亚洲va中文字幕无码| 亚洲日韩国产AV无码无码精品| 国产精品亚洲一区二区三区久久| 亚洲五月综合网色九月色| 亚洲一级二级三级不卡| 美女被免费网站91色| 麻豆69堂免费视频| 国产成人精品一区二区三区免费| japanese色国产在线看免费| 亚洲色成人网站WWW永久四虎| 99re6在线视频精品免费下载| 久久噜噜噜久久亚洲va久| av午夜福利一片免费看久久| 精品亚洲视频在线观看| 污网站在线观看免费| 国产91在线免费| 亚洲成a人无码av波多野按摩| 国产成人精品日本亚洲专区6| 91嫩草免费国产永久入口| 亚洲成年人免费网站| 亚洲理论在线观看| 亚洲精品午夜视频| 99久久国产免费-99久久国产免费 99久久国产免费中文无字幕 | 亚洲另类激情综合偷自拍图| 中国在线观看免费的www| 夜夜爽妓女8888视频免费观看| 韩国免费一级成人毛片| 国产又大又粗又硬又长免费| 亚洲精品国产成人影院| 国产免费怕怕免费视频观看|