'Math'是嵌入对象中未定义的错误

时间:2012-10-23 03:21:30

标签: javascript jquery ajax internet-explorer youtube

我使用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以外的每个浏览器中工作

enter image description here

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

更新

如果我使用emebed整个东西在IE8中不起作用

有人帮我IE推动我努力

1 个答案:

答案 0 :(得分: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 } ?>