2013-08-21 32 views
1

有人能幫助我嗎?我是新來的XSL/XML過程,我不知道我做錯了...... 我有這樣的代碼,在它的視頻生成HTML:XSL html5嵌入視頻不能正常工作

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xalan="http://xml.apache.org/xalan" extension-element-prefixes="xalan" exclude-result-prefixes="xalan"> 

    <xsl:variable name="StyleSheet"><xsl:text>html</xsl:text></xsl:variable> 
    <xsl:variable name="product" select="//...//someting..."/> 
    <xsl:template match="/"> 
    <html> 
    <head> 
     <title><xsl:value-of select="$product"/></title> 
     <BASE HREF="https://....com"/> 
     <LINK REL="stylesheet" TYPE="text/css" HREF="/style/rbc_new.css"> 
     </LINK> 
    </head> 

    <body bgcolor="white"> 
     <DIV> 
     <table width="670" border="0" bgcolor="#ffffff"> 
     <tr> 
      <td> 
    <!-- 
      This type of report is not available in HTML format. Please check the PDF version. 
    --> 
    VIDEO UPLOADED *: 
      </td> 
     </tr> 

             <tr> 
              <td valign="top" class="rbc_color1_font_10"> 

               <xsl:variable name="video" select="concat(some file)"/> 
               <xsl:variable name="video2" select="other file"> 

<!-- THIS IS FOR Html4 & older versions and this one works --> 

    <object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" width="480" height="360" codebase="http://www.microsoft.com/Windows/MediaPlayer/"> 
    <param name="Filename" value="{$video}"/> 
    <param name="AutoStart" value="false"/> 
    <param name="ShowControls" value="true"/> 
    <param name="BufferingTime" value="2"/> 
    <param name="ShowStatusBar" value="true"/> 
    <param name="AutoSize" value="true"/> 
    <param name="InvokeURLs" value="false"/> 
    <embed src="{$video}" type="application/x-mplayer2" autostart="0" enabled="1" showstatusbar="1" showdisplay="1" showcontrols="1" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" CODEBASE="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,0,0" width="480" height="360"></embed> 
    </object> 
    <!--this is for html5 and this one does not work --> 
    <video width="320" height="240" controls> 
     <source src="{$video}" type="video/mp4"> 
     Your browser does not support the video tag. 
    </video> 
     </td> 

我到底做錯了什麼?我應該把XSL版本是這樣,與HTML5的工作(不具有任何影響嗎?),它仍然會運行HTML4類型吧??:

<xsl:output 
    method="xml" 
    doctype-system="about:legacy-compat" 
    encoding="UTF-8" 
    indent="yes" /> 

謝謝你在先進。

回答

0

XSLT樣式表必須有良好的XML,這是不是:

<video width="320" height="240" controls> 

通常的方式來處理「毫無價值」 HTML屬性是通過設置controls="controls"。但是,因爲這個沒有在HTML4中定義,所以XSLT序列化程序可能無法識別它,並且將輸出controls="controls",而不是簡單地輸出controls。希望瀏覽器能夠接受這一點。

+0

謝謝我解決了這個問題。 – zaporojan

+0

如果你已經解決了這個問題,那麼說出你是如何解決它的,對於那些稍後找到這個線程的人來說是很有幫助的。 –

+0

抱歉沒有回覆,我在某些項目中遇到了問題。問題出現在我的JAVA類中,打印出來的視頻,有一個錯誤,我已經修復它。它與此無關...感謝你的幫助,而且你的回答很好,thnx再次尋求幫助。 – zaporojan