2011-03-22 58 views
0

我正在使用對象在我的html頁面中播放音頻文件。我需要使用拖對象,一個IE瀏覽器,一個用於其他瀏覽器 當前的代碼如下所示基於瀏覽器生成HTML

 <object id='audioPlayer' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6' type='application/x-oleobject' 
           height="42" width="250"> 
         // giving parameters here 
        <%-- !IE--%> 
        <object type="video/x-ms-wmv" data="<%: Model.recordSourcePath %>" width="251" id="audioPlayerMozilla" 
            height="42"> 
         // giving parameters here 
        </object> 
     </object> 

其工作fine.But問題是我需要給diiferent ID的兩個對象(即audioplayer和audioPlayerMozilla)。如果我給這兩個Java腳本相同的ID是不適用於Mozilla。我必須要使用相同的ID訪問這個對象。我可以生成基於瀏覽器

HTMLS樣品我想如下所示

if (IE) 
    { 
    <object id='audioPlayer' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6' type='application/x-oleobject' 
          height="42" width="250"> 
        // giving parameters he 
       </object> 
     } 
      else if(!IE) 
     { 
       <object type="video/x-ms-wmv" data="<%: Model.recordSourcePath %>" width="251" id="audioPlayer" 
           height="42"> 
        // giving parameters here    
     </object> 
    } 

這裏,請注意,我用的ID是一樣的。所以我可以通過它們來處理它們。有沒有辦法做這樣的事情?

回答

1

您要找的內容稱爲「IE條件註釋」。我不會解釋整個事情,我會鏈接到一個文章,這對我來說。

實施例:

<!--[if IE] 
<p>This is IE!</p> 
![endif]--> 

<!--[if !IE]>--> 
<p>This isn't IE!</p> 
<!--<![endif]--> 

具體例:

<!--[if IE] 
<object id='audioPlayer' classid='CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6' type='application/x-oleobject' height="42" width="250"></object> 
![endif]--> 

<!--[if !IE]>--> 
<object type="video/x-ms-wmv" data="<%: Model.recordSourcePath %>" width="251" id="audioPlayer" height="42"></object> 
<!--<![endif]--> 

此方法僅用於disting良好在不同版本的IE之間使用,並且作爲一個普遍性,不是IE的瀏覽器。例如,您可以爲IE6創建一個版本,爲IE7,IE8和IE9創建另一個版本,併爲所有其他瀏覽器創建另一個版本。你不能,雖然使用這種方法,有一個特定的輸出爲Firefox。

0

你可能只是避免黑客(條件代碼)一起,並使用一個球員像這樣:http://www.jplayer.org/

這將會給您提供有保證的兼容性功能更豐富的球員。