-2

我已经尝试了很多不同的方法来实现这一点。我拥有的是一个网站,我在页面顶部有一个流媒体广播播放器。通常我只有默认的给定脚本

<center> 
    <!--Wavestreaming.com SHOUTcast Flash Player-->
    <script type="text/javascript" src="http://player.wavestreamer.com/cgi-bin/swf.js?id=A7GCMO5PSJJE1EC9"></script>.        
    <script type="text/javascript" src="http://www.syracusehiphop.com/wp-content/uploads/2012/04/scriptfornoflashtext.js.txt"></script>                    
</center>

当然,它在所有桌面浏览器上都可以正常工作,但是当有人来自 IPAD 或平板电脑时,我希望他们也能够收听。

所以我使用了一个简单的 HTML5 代码,但当然它只适用于移动浏览器,所以现在桌面浏览器不会播放它,除非我提供多种 MIME 类型,但我无法提供。

因此,我尝试了多个“ELSE IF”代码,但无法正确地得到它,我得到它以在移动或平板电脑浏览器上显示 HTML5,然后在桌面上将默认脚本和 HTML5 叠加在一起

这是我最近的尝试

<script type="text/javascript">
$(document).ready(function()
{
    if ( $.browser.msie )
    {
        <center> <!--Wavestreaming.com SHOUTcast Flash Player-->
            <script type="text/javascript" src="http://player.wavestreamer.com/cgi-bin/swf.js?id=A7GCMO5PSJJE1EC9"></script>.
            <script type="text/javascript" src="http://www.syracusehiphop.com/wp-content/uploads/2012/04/scriptfornoflashtext.js.txt"></script>
        </center> 
} 
else if ( $.browser.mozilla ) 
{
    <center>
        <!--Wavestreaming.com SHOUTcast Flash Player-->
        <script type="text/javascript" src="http://player.wavestreamer.com/cgi-bin/swf.js?id=A7GCMO5PSJJE1EC9"></script>.
        <script type="text/javascript" src="http://www.syracusehiphop.com/wp-content/uploads/2012/04/scriptfornoflashtext.js.txt"></script>
    </center>
} 
else if ( $.browser.webkit || $.browser.safari ) 
{
    <center>
        <!--Wavestreaming.com SHOUTcast Flash Player-->
        <script type="text/javascript" src="http://player.wavestreamer.com/cgi-bin/swf.js?id=A7GCMO5PSJJE1EC9"></script>.
        <script type="text/javascript" src="http://www.syracusehiphop.com/wp-content/uploads/2012/04/scriptfornoflashtext.js.txt"></script>
    </center>
} 
else if ( $.browser.opera ) 
{
    <center>
        <!--Wavestreaming.com SHOUTcast Flash Player-->
        <script type="text/javascript" src="http://player.wavestreamer.com/cgi-bin/swf.js?id=A7GCMO5PSJJE1EC9"></script>.
        <script type="text/javascript" src="http://www.syracusehiphop.com/wp-content/uploads/2012/04/scriptfornoflashtext.js.txt"></script>
    </center>
} 
else if ( $mobile_browser ) 
{
    <audio controls="controls">
        <source src="http://delicious.wavestreamer.com:3057/listen.pls" type="audio/mpeg" />
    </audio>
}) 
</script> 
4

1 回答 1

2

你不能像那样把 HTML 标记放在 javascript 中。

您最好的选择是首先检查移动浏览器,然后在这种情况下应用移动代码。如果您只是对所有桌面浏览器使用相同的代码,则无需检查每个单独的浏览器。

试试这个而不是 html 标记:

var script = document.createElement( 'script' );
script.type = 'text/javascript';
script.src = url;
$("#someElement").append( script );

(来自不能附加 <script> 元素

我建议阅读 jQuery 和 javascript 的工作原理,以及它们如何与 DOM 交互。 http://www.w3schools.com/js/js_intro.asp是一个很好的起点。

于 2012-04-24T18:35:40.330 回答