實現了公告無縫向上滾動(去掉了水平線)_動易Cms教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      以下是代碼片段:
      一開始用的是marquee標簽,該方法不能實現無縫滾動,且通不過WEB標準檢驗,故改用JS實現。但動易2005的系統函數:ShowAnnounce輸出代碼中有<hr>,向上滾動時水平線也顯示出來了,又通過修改語言包(加一個<br />)和添加一個CSS(hr {display: none;})來“去掉”水平線,終于達到了自己預期的效果。
      演示:http://www.jzxx.net/


      具體做法如下:
      首先打開“Language/Gb2312.xml",找到:
      <PageChar>個公告</PageChar>
      <AnnounceErr><![CDATA[<p>&nbsp;&nbsp;沒有公告</p>]]></AnnounceErr>
      下面的兩行添加"<br />":
      <AnnounceBody1><![CDATA[<a class=’AnnounceBody1’ href=’#’ onclick="javascript:window.open(’{$strInstallDir}Announce.asp?ChannelID={$ChannelID}&ID={$ID}’, ’newwindow’, ’
      <AnnounceBody2><![CDATA[<a class=’AnnounceBody2’ href=’#’ onclick="javascript:window.open(’{$strInstallDir}Announce.asp?ChannelID={$ChannelID}&ID={$ID}’, ’newwindow’, ’

      然后在模板中放置如下代碼即可:
      <style type="text/css">
      hr {
      display: none;
      }
      #ann {
      padding-left: 10px;
      height: 17px; /*滾動框的高度,可自行調整*/
      overflow: hidden;
      }
      </style>
      <div id="ann">
      <div id="ann1">{$ShowAnnounce(1,5,false,false,0)}</div>
      <div id="ann2"></div>
      </div>
      <script type="text/javascript">
      var articleHeight=20;
      var stopscrolla=false;
      var preTopa=0;
      var currentTopa=0;
      var stoptimea=0;
      function init_srolltext1()
      {
      ann1.scrollTop=0;
      with(ann1)
      {
      style.
      style.
      style.overflowX="visible";
      style.overflowY="hidden";
      noWrap=true;
      onmouseover=new Function("stopscrolla=true");
      onmouseout=new Function("stopscrolla=false");
      }
      ann2.innerHTML="";
      ann2.innerHTML =ann1.innerHTML;
      ann1.innerHTML=ann2.innerHTML ann2.innerHTML;
      setInterval("scrollUp1()",50);
      }
      function scrollUp1()
      {
      if(stopscrolla==true) return;
      currentTopa =1;
      if(currentTopa==21) //21為滾動的距離,也可自行調整
      {
      stoptimea =1;
      currentTopa-=1;
      if(stoptimea==50) //50為停頓的時間,自行設置
      {
      currentTopa=0;
      stoptimea=0;
      }
      }
      else
      {
      preTopa=ann1.scrollTop;
      ann1.scrollTop =1;
      if(preTopa==ann1.scrollTop)
      {
      ann1.scrollTop=ann2.offsetHeight-articleHeight;
      ann1.scrollTop =1;
      }
      }
      }
      init_srolltext1();
      </script>

      查看更多 動易Cms教程  動易Cms模板

      來源:模板無憂//所屬分類:動易Cms教程/更新時間:2006-04-27
      相關動易Cms教程