在xsl中使用JavaScript

來源:互聯網
上載者:User

在xsl中是可以使用JavaScript等指令碼語言的,但要遵守XML規範。 所以要用     <xsl:comment> <![CDATA[  ]]> </xsl:comment>括起來。

例如以下一個xsl可以實現滾屏效果:

<?xml version="1.0" encoding="utf-8"?>
<html xmlns:xsl="http://www.w3.org/TR/WD-xsl">

  <head>
    <script language="JavaScript" >
      <xsl:comment>
      <![CDATA[
        var position = 0;
        var bswitch = 0;
        function scroller() {
        // document.getElementById("aa").innerHTML =document.body.clientHeight;
          if (bswitch==0 && position <=document.body.scrollHeight-document.body.clientHeight) {
              position++;
         }else{
          bswitch = 1;
         }
         
          if (bswitch==1 && position >=0) {
              position--;
         }else{
          bswitch = 0;
         }         
         
         scroll(0,position);
         clearTimeout(timer);
         var timer = setTimeout("scroller()",30);
         timer;
        }
       ]]>
       </xsl:comment>

       </script>
    </head>
  <body bgcolor="#333355" style="color:#33FF66;overflow-x:hidden;overflow-y:hidden">
    <xsl:for-each select="rss/channel/item">
      <h1>
        <xsl:value-of select="title"/>
      </h1>
      <h3>
        <xsl:value-of select="description"/>
      </h3>
    </xsl:for-each>
  
    <script language="JavaScript">
      <xsl:comment>
        <![CDATA[
        scroller() ;
        document.body.innerHTML = document.body.innerHTML.replace(/&gt;/g,">").replace(/&lt;/g,"<");

        //document.body.innerHTML = document.body.innerHTML.replace("&lt;", "<");
        //document.body.innerHTML = document.body.innerHTML.replace("&rt;", ">");
        ]]>
      </xsl:comment>

    </script>

  </body>

</html>

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.