美好的一天從javame開始!

          javame----書寫你我的明天!

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            4 Posts :: 0 Stories :: 1 Comments :: 0 Trackbacks

           

          滾動方法大全

          一、我認為比較好用的一個方法
          <table>
          <tr>
          <td>
          <div id=DIV1 style=overflow:hidden;height:40px>
          <div id=DIV2>
              
          <table>
                    
          <tr><td>
                             
          //插入你要滾動的內容1
                  </td></tr>
                
          <tr><td>
                             
          //插入你要滾動的內容2
                          </td></tr>
                    
          </table>
              
          </div>
          <div id=DIV3>
          </div>
          <script type="text/javascript">
              var speed
          =60;       //設置速度
              var FGDemo=document.getElementById('DIV1');
              var FGDemo1
          =document.getElementById('DIV2');     //定義三個層的轉換
              var FGDemo2=document.getElementById('DIV3');
              FGDemo2.innerHTML
          =FGDemo1.innerHTML
              function Marquee1()
          {
              
          if(FGDemo2.offsetHeight-FGDemo.scrollTop<=0)
              FGDemo.scrollTop
          -=FGDemo1.offsetHeight
              
          else{
              FGDemo.scrollTop
          ++
              }

              }

              var MyMar1
          =setInterval(Marquee1,speed)
              FGDemo.onmouseover
          =function() {clearInterval(MyMar1)}
              FGDemo.onmouseout
          =function() {MyMar1=setInterval(Marquee1,speed)}
          </script> </div>
          </td>
          </tr>
          </table>

          二、最簡單的一個方法

          <table><tr><td>
          <div id=demo style=overflow:hidden;height:40px>   //設置滾動的方向和滾動的高度
          <div id=demo1>
               
          <table>
                
          <tr><td>
                             
          //插入你要滾動的內容1
                  </td></tr>
                
          <tr><td>
                             
          //插入你要滾動的內容2
                          </td></tr>              
                  
          </table>
          </div>
          <div id=demo2>
          </div>
          <script>
          var t
          =demo.scrollTop
          demo2.innerText
          =demo1.innerText
          function qswhMarquee()
          {
          if(demo2.offsetTop-demo.scrollTop<=0)
          demo.scrollTop
          -=demo1.offsetHeight
          else
          demo.scrollTop 
          = demo.scrollTop +1 //1表示一次移動的象素
          }

          setInterval(qswhMarquee,
          100)//100 表示 滾動的時間
          </script></div>
          </td></tr></table>

          以上兩個方法在同一頁面可以使用多次。但是每次寫方法的時候必須將變量名和DIV的名字做相應的改變。
          否則會相互干擾。以致其中的一些不能達到效果下面這個方法在同一頁面里好象只能用一次。我試過幾次都沒有能成功

          三、比較適合圖片的滾動。可能比較長


           
          <TABLE>
            
          <TR>
             
          <TD >
               
          <DIV id=roll_layer2 style="OVERFLOW: hidden; WIDTH: 100%; HEIGHT: 20px" align=center></DIV>
                  
          <DIV id=topic style="DISPLAY: none">
                     
          <table>
                          
          //插入滾動內容
                      </table>
                   
          </DIV>
                   
          <DIV id=topic style="DISPLAY: none">
                  
          <table>    
                                   
          //插入第二版顯示的內容
                           </table>          
                
          </DIV>
          <SCRIPT language=JavaScript>
          <!--
          var speed2
          =20;
          var offset2
          = 5;
          var delay2
          =500;     //滾動速度設置

          var cur2 
          = 0;

          var roll_interval2;
          var pasue_timeout2;


          function roll2()
          {
              now_pos2 
          = roll_layer2.scrollTop;
              roll_layer2.scrollTop
          +=offset2;
              
          if (now_pos2==roll_layer2.scrollTop){
                  pasue2(
          'stop');
              }

          }

          function stop_roll2()
          {
              window.clearInterval(roll_interval2);
          }

          function start_roll2()
          {
              roll_layer2.scrollTop 
          = 0;
              roll_interval2 
          = window.setInterval('roll2()',speed2);
          }

          function text_switch2()
          {
              roll_layer2.innerHTML
          =topic[cur2].innerHTML;
              
          if (++cur2==topic.length){
                  cur2
          =0;
              }

              roll_layer2.innerHTML
          +=topic[cur2].innerHTML;
          }

          function pasue2(act)
          {
              
          if (act=='stop'){
                  stop_roll2();
                  pasue2(
          'timeout');
              }
          else if(act=='timeout'){
                  pasue_timeout2 
          = window.setTimeout("pasue2('switch');",delay2);
              }
          else if(act=='switch'){
                  text_switch2();
                  start_roll2();
              }

          }

          function start2()
          {
              text_switch2();
              cur2
          =0;
              pasue2(
          "timeout");
          }

          start2();
          //-->
                      </SCRIPT>
                                
          </TD></TR></TABLE>
          這個用起來比較麻煩。可能是代碼比較長的緣故。但是如果是圖片滾動用起來效果可能比較好。

          要看效果,可以將以上代碼全部復制,在桌面新建記事本.將所有代碼粘帖進去.然后另存為以html格式保存..然后打開就可以看效果了!
          posted on 2007-08-16 12:16 齊函 閱讀(263) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 南郑县| 崇仁县| 昭通市| 阜城县| 文山县| 唐河县| 玛多县| 靖西县| 新营市| 永济市| 含山县| 濮阳县| 上饶市| 桂阳县| 钟祥市| 罗江县| 河池市| 嘉祥县| 富锦市| 辽中县| 古浪县| 东莞市| 济南市| 宜春市| 邢台县| 惠州市| 朝阳市| 建水县| 东丰县| 沿河| 寿光市| 安塞县| 岱山县| 阳朔县| 昌黎县| 含山县| 寿光市| 利津县| 陆川县| 益阳市| 康定县|