4

我使用 ajax 在页面加载时加载 youtube 视频

$(document).ready(function(){
     $.ajax({
        url : '/myurl',
        type:"post",           
        data:{"d": $('#d_id').val()},  
        async:false,
        success:function(data){ 
            $('#container').html(data);

            //data is an emebed string

          //This is what i get from PHP page
            /*<embed class="frame"  width="850" scrolling="no" height="415" frameborder="0" src="http://www.youtube.com/embed/' . $k[0] . '?showinfo=1&amp;modestbranding=1&amp;autoplay=1&amp;rel=0&amp;iv_load_policy=3&amp;cc_load_policy=1&amp;loop=1&amp;playlist=' . $k[0] . '&amp;wmode=transparent" frameborder="0""  allowfullscreen="yes" wmode="Opaque"></embed> */
        }    
    });
});

在除 IE 之外的所有浏览器中工作

在此处输入图像描述

根据屏幕截图,我收到错误“数学未定义”如果我将嵌入更改为 iframe,我会遇到更严重的错误,例如“__flash__removecallback is undefined”。

更新

如果我使用 emebed,整个事情在 IE8 中都不起作用

有人帮助我 IE 让我发疯

4

1 回答 1

3

最后我得到了这个

在服务器端(即 Ajax 响应)

if (preg_match('/MSIE 9.0/', $_SERVER['HTTP_USER_AGENT'])) { /*for IE 9.0 generate with objace tag*/ ?>
     <object type="application/x-shockwave-flash" data="VIDEO_URL">
      <param name="movie" value="VIDEO_URL" />
      </object>
 <?php } else { /*rest of all browsers,in iframe*/ ?>
      <iframe src="VIDEO_URL"></iframe>
 <?php } ?>
于 2012-10-23T10:22:44.907 回答