欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
隨便看看

     實(shí)現了控制隨機生成的一個(gè)六位字符串下落,可以向左、向右、向下加速。實(shí)現的功能仿照俄羅斯方塊來(lái)做,本來(lái)想實(shí)現上下兩行相同字母消除功能,但想起一個(gè)方法(代碼中的erase()方法),感覺(jué)沒(méi)問(wèn)題,但一直沒(méi)有實(shí)現,后來(lái)也懶得想了?,F將代碼貼在這里,希望讀到這篇文章的朋友如果感興趣的話(huà)提出寶貴意見(jià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; //開(kāi)始時(shí)候的縱坐標
var stx=500; //開(kāi)始時(shí)候的橫坐標
var num=0; //每個(gè)div標號,同時(shí)也起到確定下一個(gè)div元素停止的位置
var len=10;
var timer;//定時(shí)器
//var arr0,arr1,arr2,arr3,arr4,arr5,arr6,arr7,arr8,arr9,arr10,arr11,arr12,arr13,arr14,arr15; //用于字母消除作用的數組,此功能沒(méi)實(shí)現,這些變量可以不用
//初始字符串初始位置
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)){   //到達目的地址時(shí)(下落到610處,此處可隨意改動(dòng))
   obj.style.pixelTop=610-len*num;
   //erase(); 功能沒(méi)有實(shí)現
   num++;
   addDiv();
   fall(num);
  }
  else if(obj.style.pixelTop<(610-len*num)) //沒(méi)有到達目的地址時(shí)
  timer = setTimeout('fall(num)',1000); //1000可以換成任意數字,越小下落速度越快
  else if(obj.style.pixelTop>(610-len*num)) //處理出現地址大于目的地址時(shí)
  {
  }
 }
 //當使用方向鍵操作時(shí)使用的下落方法
 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)){   //到達目的地址時(shí)
   obj.style.pixelTop=610-len*num;
   //erase(); 功能沒(méi)有實(shí)現
   num++;
   addDiv();
   fall(num);
  }
  else if(obj.style.pixelTop<(610-len*num)) //沒(méi)有到達目的地址時(shí)
  timer = setTimeout('fall1(num,x,y)',1000); //1000可以換成任意數字,越小下落速度越快
  else if(obj.style.pixelTop>(610-len*num)) //處理出現地址大于目的地址時(shí)
  {
  }
 }
//產(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;
 }
 //鍵盤(pán)控制
 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);
   }
}
//字母消除程序,暫時(shí)不能實(shí)現功能
 function erase(){
  var pos=new Array();
  for(var i=0;i<=num;i++){ //得到所有存在的div每個(gè)字符的位置值
    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可以改為任意數字,數字即是字符串的長(cháng)度
//-->
</SCRIPT></div>
<SCRIPT LANGUAGE="JavaScript">
<!--
  fall(0);
//-->
</SCRIPT>
</BODY>
</HTML>

posted @ 2007-07-30 16:48 sugo 閱讀(7) | 評論 (0)編輯 收藏

2007年3月22日

     訪(fǎng)問(wèn)某論壇時(shí),發(fā)現論壇全是html頁(yè)面。今天搞明白了,原來(lái)是重寫(xiě)了頁(yè)面的url。通俗的說(shuō)就是雖然地址欄里的是html結尾的url,但實(shí)際上訪(fǎng)問(wèn)的是后臺動(dòng)態(tài)jsp(php、asp)頁(yè)面。好像是一種視覺(jué)欺騙。
     實(shí)現這個(gè)技術(shù)也很容易,一般都會(huì )使用國外的一個(gè)urlrewriter過(guò)濾器。
     1、下載:
     下載地址為http://tuckey.org/urlrewrite/#download。
     2、解壓和基本配置
     使用的為2.6版本,解壓后,包中含有一個(gè)urlrewrite.xml,此為關(guān)鍵的配置文件。還有lib文件夾下的urlrewrite-2.6.0.jar這個(gè)包。將此包放到web應用程序的web-inf/lib下面,urlrewrite.xml放到web-inf下。
     3、修改應用程序web-inf文件夾下的web.xml文件,添加如下內容:
      <filter>
             <filter-name>UrlRewriteFilter</filter-name>
             <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
      </filter>
      <filter-mapping>
             <filter-name>UrlRewriteFilter</filter-name>
             <url-pattern>/*</url-pattern>
      </filter-mapping>
     4、修改應用程序web-inf文件夾下的urlrewrite.xml文件,添加rule,內容如下:
        <rule>
           <name>html rule</name>
           <from>/test/thread([0-9]+)_([0-9]+).html</from>
           <to>/show.jsp?id=$1&order=$2</to>
       </rule>
         其中要求對正則表達式有所了解,以上的語(yǔ)句可以實(shí)現當你訪(fǎng)問(wèn)http://localhost/test/thread12_56.html時(shí),會(huì )轉向http://localhost/show.jsp?id=12&order=56這個(gè)動(dòng)態(tài)頁(yè)面。
         個(gè)人覺(jué)得需要開(kāi)發(fā)人員對頁(yè)面參數非常熟悉。這個(gè)技術(shù)還是值得大家來(lái)嘗試一下的。個(gè)人論壇可以使用此技術(shù):),讓別人看不出你是使用什么編寫(xiě)的。

posted @ 2007-03-22 14:11 sugo 閱讀(46) | 評論 (0)編輯 收藏

2007年1月26日

      實(shí)現了基本的網(wǎng)絡(luò )圖片、mp3、影片下載,原理為首先根據要下載的圖片(mp3、影片)的url,將它的信息寫(xiě)入一個(gè)臨時(shí)文件。然后再從這個(gè)臨時(shí)文件將信息導入到真正你想要存儲的圖片(mp3、影片)。第一步為網(wǎng)絡(luò )到本地,第二步為本地到本地。
       //網(wǎng)絡(luò )到本地代碼:
        java.net.URL l_url = new java.net.URL("http://localhost/rlzy/photo/"+addition); //圖片url地址
        java.net.HttpURLConnection l_connection = (java.net.HttpURLConnection) l_url.openConnection();
        int randomnum=(int)(Math.random()*100);
        System.out.println(randomnum);
        File f1=new File(photopath+randomnum);
        FileOutputStream o=new FileOutputStream(f1);
        l_connection.connect();
        java.io.InputStream l_urlStream;
       
        l_urlStream = l_connection.getInputStream();

       byte b[]=new byte[1000];
       int n;
          while( (n=l_urlStream.read(b))!=-1)
              {
              o.write(b,0,n);
              }
          o.close();
          l_urlStream.close();
        
         
          //本地到本地
          RandomAccessFile random=new RandomAccessFile(f1,"r");
          long  forthEndPosition=0;
           File tfolder1=new File("E:/111/);//存儲圖片路徑
           tfolder1.mkdirs();//如果不存在就創(chuàng )建此文件夾,如果沒(méi)有這個(gè)步驟將會(huì )出現FileNotFoundException
          File f2=new File("e:/111/"+name);
             
          RandomAccessFile random2=new RandomAccessFile(f2,"rw"); 
            
          random.seek(random.length());
          long endPosition=random.getFilePointer();
          random.seek(forthEndPosition);
          long startPoint=random.getFilePointer();
            while(startPoint<endPosition) //開(kāi)始拷貝文件信息
                  { n=random.readByte();
                    random2.write(n);
                    startPoint=random.getFilePointer();
                  }
           random2.close();random.close();
           f1.delete(); //刪除臨時(shí)文件     
          程序寫(xiě)了一個(gè)簡(jiǎn)單的GUI界面 ,使其看起來(lái)更像一個(gè)下載器了。如果提高下載速度還需進(jìn)一步的學(xué)習和研究。有興趣的朋友可以點(diǎn)擊下載研究
          http://sugo.gnway.net/test/FreeDown.jar(申請的一個(gè)免費二級域名,速度可能不快 :-) ,另外需要sun公司的jre環(huán)境,Windows、Linux下均能運行)
         

posted @ 2007-01-26 14:04 sugo 閱讀(33) | 評論 (0)編輯 收藏

2007年1月24日

      報表中有這個(gè)需求,當報表很大需要下拉時(shí),但表頭在正上方,看不到對應的是哪一項的數據。此功能可以使用虛擬一個(gè)表頭來(lái)實(shí)現。具體的靈感來(lái)自網(wǎng)站隨著(zhù)鼠標移動(dòng)的圖片。當鼠標下移時(shí),圖片跟著(zhù)走。對于這個(gè)需求來(lái)說(shuō)只需把圖片換成一個(gè)表格即可。
       網(wǎng)頁(yè)中加入如下代碼:
      <DIV id="thead" style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; FILTER: progid:DXImageTransform.Microsoftpadding:8px; ; LEFT: expression(eval(document.body.scrollLeft)+eval(document.body.clientWidth)-980); BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; POSITION: absolute; ; TOP: expression(eval(document.body.scrollTop)+eval(document.body.clientHeight)-500); TEXT-ALIGN: center">
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD>
<EMBED style="LEFT: -73px; POSITION: absolute; TOP: 125px" align=right>
<table bgcolor="red"  border=1>
<tr>
<td>sdfsd</td><td>sdfsd</td><td>sdfsd</td>
</tr>
</table>
</EMBED>
</TD>
</TR>
</TBODY>
</TABLE>
</DIV>
       紅色代碼部分可以更替為任意html標記,比如img、input等等。
       注:內嵌的表格顏色最好深一些,不然會(huì )出現重疊現象。調整虛擬表頭相對屏幕上方的位置在藍色粗體的地方,可根據需要修改。
       當需要打印報表時(shí),可以添加一個(gè)button來(lái)控制這個(gè)表頭的顯示 js方法為
       function control(){ 
         var temp=document.getElementById("thead");
          if(temp.style.display=='none')
              temp.style.display='' ;
          else
              temp.style.display='none';
       }

posted @ 2007-01-24 18:53 sugo 閱讀(48) | 評論 (0)編輯 收藏

2007年1月15日

     使用hibernate的hql查詢(xún),當指定某些字段時(shí),一行數據此時(shí)得到的是相應的一個(gè)數組。而字段全部查詢(xún)得到的是一個(gè)pojo對象。
     使用struts的邏輯標簽顯示時(shí),如果得到的是一個(gè)pojo對象,可以使用<logic:iterate>,也可以使用<logic present>使用的時(shí)候不用再定義id,name屬性即為request或者session里存儲的對象的別名。然后使用<bean:write>定義兩個(gè)屬性name和logic標簽的name一樣,property為對應的類(lèi)中定義的成員變量名字。
     如果得到的是數組的集合,則需要<logic:iterate>嵌套。例如:
    <logic:iterate name="du" id="indiv" scope="session">
         <logic:iterate name="indiv" id="tiny">
              <bean:write name="tiny" />
        </logic:iterate>
    </logic:iterate>
     注(個(gè)人認為):可以看到規律,下一層的name為上層的id。
    得到的是集合,如List 或者Vector等。例如:
   <logic:iterate scope="session" id="du" name="dlist">
      <bean:write name="du" property="wdate" /> 
      <bean:define id="text" name="du" property="content" type="String"/>
      <html:link href="modify.do" paramId="id" paramName="du" paramProperty="id" linkName="mod"  />
      <html:button property="modify" onclick="mod.click()" value="modify" />
      <html:textarea property="content" value="<%= text %>"></html:textarea><br>
      <bean:write name="du" property="username" /> 
      <bean:write name="du" property="weather" /> <br>
      <html:link href="modify.do?manipulate=delete" paramId="id" paramName="du" paramProperty="id"        linkName="del"  />
      <html:button property="delete" onclick="del.click()" value="delete" />
    </logic:iterate>
    例子中還包括在一個(gè)組件中填值,使用<bean:define>標簽,可以得到一個(gè)對象,id就是對象的引用。
    <html:link>的linkName相當于超鏈接<a href="">中的id屬性,<html:link>的page和href的不同,page需要相對路徑,url前面需要加上/,href則不用。<html:link>參數傳遞,如果確定需要傳遞的參數,直接跟在url后面即可。如果是動(dòng)態(tài)的,則需要paramId, paramName, paramProperty 。第一個(gè)為參數名稱(chēng),第二個(gè)為存儲的對象的名字,如在request、session中存儲的名字,第三個(gè)就是這個(gè)對象里面的成員變量。多個(gè)參數一般使用HashMap。
    Struts中的action,即便是不想用ActionForm,也需要在action的配置屬性里寫(xiě)入,否則會(huì )出現空值的問(wèn)題,今天遇到了,所以定義DynaActionForm還是必要的。
    hibernate一般的數據庫操作都通過(guò)session來(lái)進(jìn)行,我把所有涉及的操作都寫(xiě)成了一個(gè)ObjectDAO,比較方便操作。

posted @ 2007-01-15 20:39 sugo 閱讀(29) | 評論 (0)編輯 收藏

2007年1月14日

    當提交表單時(shí),此時(shí)操作人員只需等待結果返回,這里,我實(shí)現了一個(gè)覆蓋網(wǎng)頁(yè)的方法,使得整個(gè)網(wǎng)頁(yè)被一個(gè)很大的div覆蓋,這樣操作人員就不能點(diǎn)擊頁(yè)面的內容了。實(shí)現很簡(jiǎn)單,一個(gè)div
    <div id="doing"  style="Z-INDEX: 12000; LEFT: 0px; WIDTH: 100%; CURSOR: wait; POSITION: absolute; TOP: 0px; HEIGHT: 100%; display:none ">
            <table width="100%" height="100%">
                <tr align="center" valign="middle">
                    <td>
                        <table width="169" height="62" bgcolor="#99cccc" style="FILTER: Alpha(Opacity=75); WIDTH: 169px; HEIGHT: 62px">
                            <tr align="center" valign="middle">
                                <td>頁(yè)面提交中.<br>
                                    Loading.</td>
                            </tr>
                        </table>
                    </td>
                </tr>
            </table>
        </div>
     頁(yè)面最初載入時(shí)把它隱藏起來(lái),當按下提交按鈕時(shí)讓它顯示。結果返回后再次讓它隱藏。jsp代碼:
     <%
          String content=request.getParameter("tc");
          if(content==null){
    %>
        <form action="#" method="post" onsubmit="return show()">
          <textarea name="tc">dfdfsdf
             dfdaf</textarea>
          <input type=submit value=" go "  >
       </form>
   <%
     }
       else{
           if(content.indexOf("\n")==-1)
             out.println("haha");
            // content=content.replaceAll("\n","<br>");
   %>
          <textarea> <% out.println(content); %>
        </textarea>
   <%
      }
   %>
   show方法:
    function show(){
         document.getElementById('doing').style.display=''
         return true;
   }
    當表單提交并返回結果時(shí),頁(yè)面重新加載,div的display屬性自動(dòng)又變?yōu)閚one。達到了想要的效果。

posted @ 2007-01-14 23:31 sugo 閱讀(41) | 評論 (0)編輯 收藏

2006年12月31日

    幻燈片大家都非常熟悉了,我以雅虎幻燈片為靈感,開(kāi)發(fā)了自己的幻燈片。
    首先,這個(gè)幻燈片程序是在我的jsp圖片查看器上加上去的,算是滿(mǎn)足自己的需求吧,哈。因為有時(shí)候看幻燈片對我來(lái)說(shuō)是一種享受。。。嗯
    首先是做一個(gè)基本的圖片自動(dòng)播放的程序,這個(gè)純javascript就可以實(shí)現,實(shí)現需要的javascript方法也很簡(jiǎn)單,代碼如下:
     function rotateBanner(frameNumber,interval){
      document.banner.src=fn[frameNumber].src;//為頁(yè)面中的id為banner的圖片標記動(dòng)態(tài)定義圖片的鏈接地址
      var imageChoice=frameNumber+1;
      if(imageChoice==fn.length){
         imageChoice=0;
      }
      player=window.setTimeout("rotateBanner("+imageChoice+","+inv+")",inv);
   }
   其中frameNumber為圖片路徑數組的下標,interval為顯示下一幅圖片的間隔時(shí)間。
   首先,我們要定義一個(gè)全局數組,數組各個(gè)元素的值為圖片的url。(一般我們都把一類(lèi)的圖片放在一個(gè)目錄中,這種情況可以通過(guò)動(dòng)態(tài)生成的方法來(lái)動(dòng)態(tài)的為這個(gè)全局數組的各個(gè)元素賦值)
   js方法的使用也很簡(jiǎn)單,在這個(gè)頁(yè)面的body標簽加入onload=“rotateBanner(0,5000)”即可,在這里0為數組的第一個(gè)元素下標,5000為播放的間隔時(shí)間5秒。
   一個(gè)不能被我們控制的幻燈片頁(yè)面就產(chǎn)生了。下面我們就要開(kāi)始對其進(jìn)行控制了,首先,我們實(shí)現讓幻燈片停止滾動(dòng)播放圖片。這個(gè)很簡(jiǎn)單,上面的js方法我們定義了一個(gè)定時(shí)器player變量,這個(gè)player是個(gè)全局的,當不停的遞歸調用的時(shí)候,都是它自己在不停的被賦值。停止它我們只需把這個(gè)定時(shí)器去處即可。在頁(yè)面中加上一個(gè)超鏈接,在它的onclick事件中觸發(fā)一個(gè)js方法,不妨我們再寫(xiě)一個(gè)方法,代碼為:
   function stop(){
       window.clearTimeout(player);
   }
    這樣就把圖片循環(huán)顯示的player定時(shí)器去除了。
    有停止就要有開(kāi)始,開(kāi)始就容易了,在開(kāi)始超鏈接的onclick事件調用rotateBanner()方法就行了,但這里有個(gè)問(wèn)題,這個(gè)一會(huì )再說(shuō)。
    我們再添加上一幅,下一幅超鏈接,我們可以通過(guò)手工點(diǎn)擊來(lái)顯示下一頁(yè),這里就要又要定義一個(gè)全局變量了,它用來(lái)記錄顯示圖片的數組下標。代碼如下:其中的firstno變量我們后面再說(shuō)它的作用
   function previous(){
    if(imgno==0)
       imgno=fn.length;
       imgno=imgno-1;
       firstno=imgno;
       document.banner.src=fn[imgno].src;
  }
   function next(){
     if(imgno==fn.length-1)
       imgno=-1;
       imgno=imgno+1;
       firstno=imgno;
      document.banner.src=fn[imgno].src;
}
  imgno就是我們定義的全局變量,來(lái)記錄當前圖片的數組下標。但這樣有個(gè)問(wèn)題,那就是imgno的初值為多少?現在的代碼中并沒(méi)初始化。好,我們分析一下,從頁(yè)面打開(kāi)開(kāi)始,onload事件調用rotateBanner方法,這是最初的入口,下一幅上一幅按鈕也是當執行了這個(gè)事件后才會(huì )有作用,所以我們需要在rotateBanner方法中記錄圖片的下標。其實(shí)也可以在聲明的時(shí)候初始化為0。
   所以我們在點(diǎn)擊開(kāi)始的時(shí)候,rotateBanner(firstno,firstclock)函數里面的參數要傳入當前圖片的下標,不然我們點(diǎn)開(kāi)始后幻燈片是開(kāi)始幻燈顯示了,但它又從0開(kāi)始了,不會(huì )從我們停止定時(shí)器時(shí)候的顯示的圖片的位置開(kāi)始。在此firstno全局變量也是起到記錄的作用,但注意它和imgno變量的不同,它記錄的是目前顯示的圖片的下標,而imgno在previous和next方法中已經(jīng)不是當前圖片的下標。firstclock是下面我要說(shuō)明的內容。
   要控制每張圖片顯示間隔的時(shí)間,通過(guò)一個(gè)下拉選擇框來(lái)操作,取得每個(gè)選項相應的值很簡(jiǎn)單。當選項改動(dòng)時(shí)觸發(fā)一個(gè)事件,我們取名為setclock()方法,firstclock就是來(lái)獲得間隔時(shí)間的,代碼為:
   function setclock(clock){
      firstclock=clock;
      rotateBanner1(imgno,clock);
   }
   rotateBanner1()的代碼為:
   function rotateBanner1(frameNumber,interval){
     window.clearTimeout(player);
     document.banner.src=fn[frameNumber].src;
     var inv=interval;
     var imageChoice=frameNumber+1;
      if(imageChoice==fn.length){
         imageChoice=0;
     }
     imgno=frameNumber;
     firstno=imgno;
     player1=window.setTimeout("rotateBanner("+imageChoice+","+inv+")",inv);
   }
   通過(guò)代碼可以看出,rotateBanner1方法其實(shí)在下拉框選項改變觸發(fā)的時(shí)候只執行了一次,因為最后一行調用的還是原來(lái)的rotateBanner()方法,這個(gè)代碼的當時(shí)寫(xiě)的時(shí)候很有戲劇性,嘻嘻。
   其實(shí)這個(gè)幻燈片還是很簡(jiǎn)單的,大家只要動(dòng)動(dòng)腦,不難寫(xiě)出來(lái)。。。那天看一個(gè)人物傳記,sun公司的前任首席科學(xué)家Bill Joy,一天編程能編14個(gè)小時(shí)。。。。:)。。。腦子越用越靈活,啥也不說(shuō)了,向他學(xué)習,學(xué)習,再學(xué)習。
   哈哈,明年再接著(zhù)blog了。。。。。

posted @ 2006-12-31 20:28 sugo 閱讀(97) | 評論 (1)編輯 收藏

2006年9月12日

        今天無(wú)意中發(fā)現了一個(gè)叫做Apusic的應用服務(wù)器,仔細一看,是中國自己開(kāi)發(fā)的應用服務(wù)器,想到是中國自己開(kāi)發(fā)的東西,一定要支持一下。不過(guò)在搜索Apusic的時(shí)候,發(fā)現了不少負面的消息。先不管那么多了,通過(guò)一個(gè)鏈接下載了最新的5.0的版本,不過(guò)是個(gè)免安裝的試用版。配置很簡(jiǎn)單,只需在bin目錄的setenv.cmd中編輯APUSIC_HOME(解壓后所在目錄)和 JAVA_HOME(jdk所在目錄),不過(guò)還需要把jdk目錄下lib文件夾的tools.jar復制到APUSIC_HOME的lib目錄下面,網(wǎng)上沒(méi)有這么介紹,但如果不這樣做的話(huà),運行不成功。至少我是這樣。
         地址欄輸入http://localhost:6888/就可以訪(fǎng)問(wèn)了。
         想要發(fā)布自己的web應用,我是先把web應用打包為war文件,然后放入到applications目錄下面。然后在config目錄的server.xml中添加了部署這個(gè)web應用的一段話(huà)--<application name="test.war" base="解壓目錄\applications\test.war" start="auto"/>。地址欄輸入http://localhost:6888/test 就能成功訪(fǎng)問(wèn)了。
        運行了一下,速度還可以。性能方面還需要長(cháng)期的測試和觀(guān)察。

posted @ 2006-09-12 21:34 sugo 閱讀(31) | 評論 (0)編輯 收藏

2006年9月9日

        忙了一天裝的Redhat Linux8.0,裝好了之后發(fā)現鼠標一直到處亂竄,重啟不行,關(guān)機重開(kāi)電腦也不行。一氣之下卸載了它重裝。但卸載的問(wèn)題隨之而來(lái)了。。。。
        刪除分區比較容易,在windows用pqmagic就可以刪除。刪除之后呢〉?。。。。。
        重啟電腦后,原來(lái)安裝時(shí)候安裝的grub開(kāi)始搞鬼了,系統啟動(dòng)就要加載這個(gè)引導程序,直接不會(huì )出現讓你選擇進(jìn)入windows的界面。只有一個(gè)grub提示符,光標在一直閃,好像是在嘲笑我。。。。。。:(
        不要著(zhù)急,在提示符下輸入 rootnoverify (hd0,0) 命令成功之行后,然后輸入 chainloader +1 最后是boot,(注意前兩個(gè)命令之后要有空格)。系統將執行我們剛才輸入命令的參數(hd0,0)對應的所在磁盤(pán)分區的啟動(dòng)程序,這時(shí)候就能看到熟悉的windows啟動(dòng)界面了。之后要進(jìn)入dos界面下(可以使用光盤(pán)引導,或者裝一個(gè)虛擬軟驅?zhuān)?,在命令提示符下輸?fdisk /mbr。  好了,到此,卸載問(wèn)題解決了。。。。
        第二遍總算沒(méi)有鼠標的問(wèn)題了,但又來(lái)了adsl撥號的問(wèn)題了。網(wǎng)上的文章講的內容都差不多,但都不行。adsl-setup配置好之后,輸入adsl-start的時(shí)候老是返回錯誤。不知道哪里錯了。不行,還是得接著(zhù)研究。。。。
        搞了一晚上也最終沒(méi)能撥號成功。放放吧。其實(shí)我用linux主要目的在兩個(gè),學(xué)習linux系統的操作和配置,最重要的就是架設web服務(wù)器。
        第二天,我想既然我上不了網(wǎng),我用能上網(wǎng)的電腦把jdk、tomcat、mysql下載到u盤(pán),然后再拷到linux系統這個(gè)辦法總可以吧,結果也證實(shí)我這個(gè)想法是明智的。首先查資料看看linux系統下如何掛載u盤(pán)。首先,打開(kāi)終端后,輸入命令fdisk -l  /dev/sda ,這個(gè)命令最主要目的是看看u盤(pán)是不是真正被識別了還有就是u盤(pán)對應的設備名,一般就是sda1了。 敲入命令 mount -t vfat /dev/sda1 /mnt/usbhd。如果命令正確執行,那么不會(huì )有什么錯誤提示。你去/mnt的usbhd里查看,里面的內容就是u盤(pán)里面的東西了。
       jdk安裝比較簡(jiǎn)單,下載linux下的jdk安裝包,是個(gè).bin文件。執行這個(gè)文件,將生成一個(gè)rpm安裝包。然后使用 rpm命令就可以安裝了,并且jdk自動(dòng)安裝到了/usr/java文件夾下了。
       tomcat是個(gè)tar.gz文件,使用tar命令就解壓了。就解壓在了此文件所在的路徑。
       關(guān)于mysql的安裝是最讓我頭疼的,一直到了晚上才安裝好。參考的這篇文章http://blog.azsq.net/archives/2006/03/31/36.html,成功安裝,在此也謝謝這篇文章的作者了。安裝包我下載的4.0.27版的。
       配置開(kāi)發(fā)環(huán)境我使用了大多數人的做法,修改了/etc/profile文件,加入了和在windows下一樣的環(huán)境變量。
       這個(gè)周末完全獻身了linux,我覺(jué)得挺值得。linux下運行jsp程序感覺(jué)很快,心情也變得異常的好。。。。。

posted @ 2006-09-09 20:51 sugo 閱讀(26) | 評論 (0)編輯 收藏

2006年9月7日

1、啟動(dòng)eclipse彈出錯誤對話(huà)框,讓你查看日志文件。
      此錯誤一般發(fā)生在安裝了oracle9i之后,安裝后,oracle自帶的jdk將其jdk所在目錄的bin路徑寫(xiě)入了path環(huán)境變量。此jdk版本為1.3,如果你安裝的jdk版本為1.4以上的話(huà),就會(huì )發(fā)生這個(gè)錯誤。解決方法很簡(jiǎn)單,把這個(gè)環(huán)境變量去掉就可以了。
2、在web.xml文件中配置<error-page>
      當輸入不存在的url時(shí),tomcat通常會(huì )出現404錯誤的頁(yè)面,對于開(kāi)發(fā)者來(lái)說(shuō),這件事情無(wú)所謂。而對于用戶(hù)來(lái)說(shuō),可能看到這樣不太友好的界面,可能會(huì )不很舒服。所以配置<error-page>還是必要的,一般加入這段文字就可以了:
      <error-page>
             <error-code>404</error-code>
             <location>/error.html</location>
     </error-page>
     <error-page>
             <exception-type>javax.servlet.ServletException</exception-type>
             <location>/error.html</location>
  </error-page>
        必須要注意的一點(diǎn)是,指定的出錯后轉向的文件,其大小至少為512bytes,否則不會(huì )跳轉到你指定的文件。(可以讓用戶(hù)設置客戶(hù)端ie的internet選項,但我想哪個(gè)用戶(hù)也不想自己手工設置吧)。
         還想說(shuō)的是,此配置最好是webMIS或者網(wǎng)站開(kāi)發(fā)完畢后之后再配置。因為我在開(kāi)發(fā)過(guò)程中,調試出現錯誤也轉向了錯誤頁(yè)面。不利于發(fā)現程序中出現的錯誤。
        有的人想通過(guò)欺騙手段,response.setStatus(200)來(lái)達到此目的。我個(gè)人覺(jué)得沒(méi)什么意思了。。。。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
WINDOWS XP風(fēng)格的鼠標右鍵菜單
常用作帖、發(fā)帖代碼集萃
12、JS類(lèi)應用實(shí)例之拆分數據到工作表或工作簿
Js數組對象中每一項值value相加
插入表情JS代碼,網(wǎng)頁(yè)編輯
JQuery播放器代理--IE下支持wma格式
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久